DevC++, Visual Studio, Ch, Vim, gedit, what else?
Bloodshead if you're looking for something simple and easy to use, and Windows
Definitely - Visual Studio + the following plugins installed:
Here is also a list with recommended Visual Studio extensions: http://stackoverflow.com/questions/2757357/visual-studio-2010-recommended-extensions
Under Windows, I'd suggest Visual Studio Express. Free and the feature set (especially the excellent debugger) can't be beat.
One that works best for you. I don't think there is a universal IDE that will fit everyone.
If you are developing a Microsoft C++ app, Visual Studio might be the logical choice. If you are working in a *nix environment, then vim or emacs is a good bet (again, depending on your needs).
Can you tell us more about what kind of projects you are working on?
Eclipse and the CDT (C/C++ Development Toolkit) is quickly becoming a favorite of mine. The editor could use some work, but the extensibility of Eclipse via plug-ins is a great way to "create your own" IDE...
basically I'm working on programming challenges coming up in topcoder.com & spoj.pl so I need to keep writing many small apps quickly and comfortably. Right now DevC++ suits the most, while on linux vim comes handy, any other IDE which might save me more time on these contests? (PS: It's not a project dev, but rapid coding and finding faster smarter solutions => space for fast experiments by code modifications)
I prefer netbeans ide for C/C++ netbeans C++. You can test your code, document, use all the available plugins to enhance your productivity.
I have tried eclipse but I like netbeans more...
C and C++ are of course much older than Java, and are still the languages of choice for many high-profile open-source projects. Based on that, on could guess there would be many other strong cross-platform and open-source C/C++ IDEs. You’ll find that NetBeans C/C++ Pack may be the strongest one around, however. Let’s look at some C/C++ Pack’s competitors.
DevCPP
DevCPP is very popular among Windows developers. It’s lightweight, well supported, and, like NetBeans, relies on external make tools and C/C++ compilers. Additionally, it supports a wide variety of C/C++ compilers. Though DevCPP is written using Borland Delphi, an attempt to port it to Linux (using Kylix) failed. So DevCPP is not an option for cross-platform C/C++ development.
OpenWatcom
The Watcom C/C++ compiler is cross-platform but offers no Unix support; it targets Windows and OS/2. Though not very user-friendly, it comes with an integrated debugger and a help system. It was once the compiler of choice for high-performance C/C++ applications, with its enhanced code optimizer and support for all Intel processor variants. When Sybase bought Watcom, though, the C/C++ compilers and IDEs fell into obscurity. Later the tools were released as open-source software. Nowadays, it looks like the community project is going well, but there’s still no support for Unix and Linux systems. This makes OpenWatcom essentially a Windows-only IDE and not suitable for our purposes.
Anjuta
Anjuta is based on the complete GNU toolset for C/C++ development. In addition to the tools supported by C/C++ Pack, it supports the GNU Autotools, a set of scripts that simplifies generating Makefiles for multiple operating systems and compilers. It’s also focused on GNOME development, so it provides templates for GTK, Gnome and Glade applications.
While DevCPP and OpenWatcom are Windows-only, Anjuta and KDeveloper (see next) are Unix-only. Some users have reported success running both under Cygwin, but they are still far from providing robust support for compiling and debugging native Windows applications.
For Unix developers, Anjuta provides integrated access to man pages and GNOME documentation. Its integrated debugger, like C/C++ Pack, relies on GDB. The latest releases provide integration with Glade, the Gnome visual UI builder.
KDevelop
Everything said before about Anjuta applies to KDevelop, if you just replace GTK/Glade/GNOME with Qt/QtDesigner/KDE. Anjuta and KDevelop are strong C/C++ IDEs for open-source desktops, but they don’t cut it as cross-platform IDEs.
Eclipse CDT
C/C++ development support in Eclipse is almost as old as Eclipse IDE itself, but it has not matured as fast as the support for Java. Although currently labeled as release 4.0, Eclipse CDT doesn’t provide many features beyond those in NetBeans C/C++ Pack (which is younger).
Also like NetBeans, Eclipse CDT doesn’t integrate yet with visual development tools for Gnome, KDE or Windows. It has the advantage of supporting compilers other than the GNU compilers, but this won’t be a real plus if your goal is developing cross-platform C code.
Red Hat is developing GNU Autotools and RPM generation plug-ins which, when they are released as production level, may become Eclipse CDT’s real advantage over NetBeans C/C++ Pack (at least for Unix/Linux users). On the other hand, NetBeans is the development IDE for Open Solaris, so don’t expect it to fall short in enhancements for Unix developers.
Conclusion
The only flaw one would find in C/C++ Pack, comparing it to other open-source alternatives for C/C++ development, is the lack of operating-system and third-party library documentation support in the help system. That would be also its main drawback when compared to proprietary C/C++ IDEs. But if you evaluate alternatives for cross-platform C/C++ development, the strongest (and only) competitor for NetBeans is also its main competitor in the Java space, that is, Eclipse.
Best by what measure? This isn't a question, this is an invitation to discussion. And is "integrated" best?
Unix is the original development environment, and probably still the "best" (by my metrics). Part of its power is that it is not "integrated". But I guess you could argue that with plugins IDEs stop being integrated as well.
If your metrics are something like "lets brain-damaged programmers appear to be productive", you might want to choose something like Visual Studio or Eclipse.
Seems that nobody mentioned Code::Blocks.
It works equally well on Linux and Windows, has support for multiple compilers (for example on windows I use it to compile the library I'm writing with gcc, Digital Mars C, Borland C and Microsoft C++) to check if I did not came across an incompatibility).
I have to agree with visual studio. You can get a cut down version of Visual Studio 2008 (called Express) from Microsoft for free.
Visual Studio 2008 (for good code editor)
C++Builder 2009 (for having no problems with boost and other libraries)
A lot of people have said DevC++, and I agree this is one of the best IDEs, but it has some bugs and nobody is working on updating it at the moment. For that reason, I usually use wxDevC++, which was designed for use of wxWidgets, but they also managed to fix some of the bugs in DevC++.
here are your opensource choices that might be as fast as Bloodshed...:
CodeBlocks (Opensource, still ongoing development)
Relo IDE
CodeLite
I'm fond of KDevelop. Has worked well for me in the past.
Visual Studio is better in a lot of ways, but it's big, slow and not free - neither free as in freedom nor as in beer (yes, I'm aware of Express, which is good for many things; however it does lack some features such as OpenMP and a 64-bit compiler, whereas KDevelop isn't crippleware). I use VS when work is paying for it, but I'm not willing to spend that much of my own money on it.
Why do you need an IDE?
VIM is all you need for anything. Learn VIM and Makefiles and you'll be set for anything.
Qt Creator is gaining popularity for those who like the Qt toolkit and cross-platform development! I hope they keep it unbloated in future versions...
Visual Studio/C++ simply because its on a very short list of systems with edit-and-continue.
I used Eclipse a loot for developing C++ on linux, however i switched to gvim a while ago and found it to be really satisfying.
As someone who occasionally needs to do remote *nix development using a Windows machine, I have personally found BVRDE to be incredibly useful: http://sourceforge.net/projects/bvrde/
The BVRDE is a fully integrated development environment (IDE) for remote cross-platform compiling and debugging of UNIX and LINUX console applications. BVRDE runs on a Windows platform, but compiles and debugs applications on UNIX systems.
I use
Visual Studio 2010 (support for C++0x is good, improved intellisense is superb)
Code::Blocks (with MinGW compiler)
- Geany (sometimes coz it's lightweight)