My opinion is that IDEs do nothing good and a lot of things poorly and that you should look to build your dev environment out of a suite of tools that focus on doing small things well. But, if you're dead set on an IDE, the standard for open source, free IDEs is Eclipse.
For C and C++ development, Eclipse has the CDT framework which gives you all of its heavyweight IDE-type things for your C and C++ code: introspection, code completion, refactoring tools, syntax highlighting, debugger integration and so on.
It's been around a long time now and is both stable and robust.
The CDT Project provides a fully functional C and C++ Integrated Development Environment based on the Eclipse platform. Features include: support for project creation and managed build for various toolchains, standard make build, source navigation, various source knowledge tools, such as type hierarchy, call graph, include browser, macro definition browser, code editor with syntax highlighting, folding and hyperlink navigation, source code refactoring and code generation, visual debugging tools, including memory, registers, and disassembly viewers.
