For the GoF book, they mainly use control flow graphs, having the function encapsulate other functions to hand control into other defined objects.
For tools on how to create them, there are 2 I've been having fun with lately, Visio 2010 which is in a free Beta right now, and Visual Studio 2010 also has UML modeling capabilities. You can currently create UML diagrams from existing code now, but you
can't yet create skeleton templates of code from the UML diagrams you create(yet).
So those two programs would be my suggestions.
Out our company we recently started a special interest group just for the purpose of designing these diagrams.