tags:

views:

129

answers:

6

I had used Turbo C earlier. Is there any advanced IDE, like Visual Studio, so that I could brush up on C.

+6  A: 

Why not use Visual Studio? The express editions are free...

Goz
Support for C is not that great in MSVC. Microsoft doesn't even want to fix it. See the whole snprintf() craziness. See [this question](http://stackoverflow.com/questions/2915672/snprintf-and-visual-studio-2010)
jonescb
Well, IIRC C89 is fully implemented... ok, there's no support for C99 and there's all the "secure CRT" annoying stuff, but it's quite simple to turn this last stuff off. <rant>It's not that the secure CRT functions are bad, well, actually they are pretty good; but hell, they should standardize them (or something of that kind) instead of messing with VLAs and similar stuff :( </rant>
Matteo Italia
will the normal C++ code that compiles in Turbo C work out of the box in VS C++ Express?
iJeeves
If it's *standard* (i.e.: no proprietary headers/libraries/keywords/#pragmas/... are used) it should.
Matteo Italia
Still Visual Studio probably has better support for C than Turbo C ... I haven't used Turbo C since 1994 and I very much doubt it was C89 compliant even then ...
Goz
Uh, for the "standard" thing I remembered an old answer of mine (http://stackoverflow.com/questions/2295056/c-program-cross-platform-differences-on-windows-and-unix-os/2295340#2295340). You may want to have a look at it to see if your applications will survive a change of compiler. :)
Matteo Italia
+2  A: 

Why not use Visual Studio?

There's also a C plugin for Eclipse.

Both are great IDEs.

Randolpho
Each to their own ... I can't stand eclipse ;)
Goz
I like Eclipse, but mostly for Java Development.
Bernie Perez
@Goz: I also generally prefer Visual Studio, but Eclipse is still a solid IDE -- even if it totally lacks the concept of a solution file.
Randolpho
My personal problem with Eclipse when I tried to use it for C development several years ago was the need to learn Java in order to add a build rule to create C source code at build time from a tool like flex or bison. Or any other unusual build rules for that matter. Something that in a `Makefile` takes one line to express the dependency and one line to execute the tool. Bug reports and questions to the support community produced only "me too" responses. It may be better today, but the experience soured me on the tool.
RBerteig
A: 

VisualStudio (Express edition if you don't want to pay) or Eclipse both have support for C

MarkH
+3  A: 

What about http://www.codeblocks.org/?

You can download it bundled with the MinGW compiler toolchain so you won't have configuration problems. Give it a try, you'll be pleasantly surprised :)

milan1612
+4  A: 

Given C's historical orientation towards the command line, you might also consider the combination of your favorite programming-friendly text editor, make, and the Gnu compiler. On Windows, a good approach is MinGW.

If you don't already have a favorite editor, some free candidates that work on Windows include:

  • vim, probably the best currently supported member of the vi family.
  • SciTE, a light-weight GUI programmer's editor that started as a simple demonstration of the Scintilla rich text editor GUI control, but which has taken on a life of its own.
  • GNU Emacs, probably the best known and longest lived member of the emacs heritage, which extends back to the mid-1970s.
  • Notepad++, a useful programmer's editor named after Notepad which has shipped with Windows since its early days. In current versions, notepad++ is also based on the Scintilla editor control.

There are many, many more. Notably, choice of preferred editor is often the source of heated discussions. Although I have used a few of the listed tools myself, and even have heated opinions of my own, I will refrain from making an explicit recommendation. Pick the tool that suits your way of working, and don't hesitate to use competing tools, even on the same project, when they provide non-overlapping benefits.

In my personal experience, one advantage of adopting and learning a good programmer's editor over an all-encompassing IDE is the ability to use it for all your editing needs. If you float among languages and/or target platforms frequently, then your principle editing in a comfortable tool and reserving the IDE for those tasks that only it can perform can be more productive than learning the quirks of a new IDE for each target.

Edit: I've extended the list of Windows-supporting programmer's editors and added some more words of encouragement.

RBerteig
+1 Cygwin is also helpful for an environment where you edit files using the terminal since it provides the commands which are in my opinion necessary. (For example, sed and grep)
mathepic
To not answer with just a small variation, i think you should add Notepad++ to the list http://notepad-plus-plus.org/
Cristina
@Cristina, I've been hearing mention of notepad++ for many years, but have never used it myself. I'll add it to the list, and see if I can scare up a link for emacs of some form as well for completeness.
RBerteig
A: 

The C-Support in Netbeans is quite nice...

Have a look. Alternative: Code::Blocks

Danny