The first question to ask is what does a programmer need ?
To create an application you have to make sure that all these tools are available.
- A Text editor : To write the code source ( of any language). Basically a simple software as "bloc-notes" under Windows or "vi" under Linux is enough. The best thing is to have an intelligent text editor that make your code colorful and make your codes more comprehensive and easier to read.
- A Compiler : to compile your source code to binary code.
- A debugger : To help you to correct the bugs in your code.
Best Free C/C++ IDEs
Note that both work on Windows and only Code::Blocks can run on Linux. And for Windows vista users you should follow some particular procedures to set up thes IDE or else you'll face many bugs with compiling. Nevertheless, Visual Studio Express work correctly on Vista.
For mac users, I recommend "Xcode". You can install it from the CD of Mac OS.