Tell me more ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I would like to do some C development in Windows. But I'm struggling to find a good IDE or Text Editor that is lightweight (e.g. not like Eclipse) but also keep me productive (e.g. has auto-completion and let me "jump to implementation" when I'm positioned over a function.).

I also want that the editor is free but allow me to use it for commercial development. E.g. not like Visual Studio for Students.

share|improve this question
3  
it can be simple even if it is big – user1249 Feb 12 '11 at 18:04
4  
"Simple" and "has auto-completion" seem to be two contradicting requirements. – bunglestink Feb 13 '11 at 12:32
show 4 more comments

closed as not constructive by ChrisF Dec 30 '11 at 12:19

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or specific expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, see the FAQ for guidance.

18 Answers

up vote 12 down vote accepted

I've used PellesC in the past and it is fantastic.

enter image description here

  • Support for 32-bit Windows (X86), 64-bit Windows (X64), and Windows Mobile (ARM).
  • Support for the C99 standard.
  • Integrated source code editor with call tips and symbol browsing.
  • Integrated source-level debugger.
  • Project management.
  • Inline assembler for X86 and ARM.
  • Integrated resource editor.
  • Integrated bitmap, icon and cursor editor.
  • Integrated animated cursor and video editor.
  • Integrated hex-dump editor.
  • Support for custom controls in the dialog editor.
  • Support for custom project wizards.
  • Pelles C is free!
share|improve this answer
2  
I actually like this one. – Jonas Jun 2 '11 at 20:12
show 1 more comment

VIM works in Windows. See cygwin + vim, gvim, or SSH into your windows box via Putty and use VIM that way.

share|improve this answer
5  
+1 It also has completion and excellent ctags support, in addition to being the best text editor of all time. *puts on asbestos jacket* – Rein Henrichs Apr 28 '11 at 21:44
3  
There's a native Windows version of VIM too :) – jwenting Apr 29 '11 at 6:31
show 3 more comments

Not specifically for C, but Notepad++ is probably one of the more popular code editors out there. It offers syntax highlighting for many languages and has lots of plugins. There are also loads of useful features (my particular favorite is search & replace that allows regular expressions).

There may be an IntelliSense plugin for Notepad++ but I do not know. Also, you will have to take care of acquiring and setting up your own compiler.

share|improve this answer
2  
@Tamas: In the computer software domain, Intellisense is a registered trademark of Microsoft. IANAL, but Vim Intellisense is probably infringing. – Ken Bloom Apr 29 '11 at 3:37
2  
@Everyone saying IntelliSense is Microsoft's code completion; It's become a colloquial way to mean code/text completion. Just like coke is interchangeable with cola (and in some areas any soda at all). – Rob Oct 19 '11 at 10:06
show 3 more comments

Checkout Code::Blocks. You can use it to create both C and C++ projects.

I've used it instead of Eclipse when looking for something simpler that works out of the box.

share|improve this answer
1  
The IntelliSense of Code::Blocks isn't good ;( – Oscar Mederos Feb 12 '11 at 18:57
show 1 more comment

I found geany to be quite lightweight and productive. It doesn't come with a compiler. You will have to install gcc (mingw) separately.

Geany has its own version of tagging for code browsing and "IntelliSense". Can edit code just like an editor, without the need to setup a project.

share|improve this answer
show 2 more comments

I use emacs. Although it doesn't have auto-completion, but it can probably be added (emacs being what it is). And it exists on pretty much every major OS platform (including Windows).

share|improve this answer
1  
emacs and simple are mutually exclusive domains – Jarrod Roberson Apr 28 '11 at 21:51
2  
For Emacs auto-complete you can use M-/. It completes based on other words in the open files that have the same starting characters. – sickgemini Jun 3 '11 at 5:27
1  
@Jarrod: Depends what your baseline is. By comparison with Visual Studio or Eclipse, emacs is indeed lightweight. So is an overweight elephant. – Donal Fellows Oct 19 '11 at 8:07
show 2 more comments

There's Visual Studio Express - it's free but unsure about using it for commercial releases.

When wanting to test something really small and quick in C/C++ without firing up Visual Studio I usually reach for Bloodshed Dev-C++, proper IDE but can't remember if it has IntelliSense (which is your auto-complete and "Go to Definition" link for symbols).

share|improve this answer
5  
Dev-C++ is an old, unmaintained pile of dookie. Let it burn in the hells it created for itself. Use wxDev-C++ if you must. – greyfade Feb 12 '11 at 18:31
show 6 more comments

I go for Notepad++. It has lots of awesome themes, supports plugins, autocomplete syntax and multiple window/instances

share|improve this answer
show 1 more comment

I would recommend Codelite if you cannot use Visual Studio for some reason. It's cross-platform, extendable, and has more features than you can shake a stick at.

Notepad++ is great too, but Codelite is really an IDE whereas I'd call Notepad++ just an editor.

P.S. - And stay far away from Dev-C++ if you value your sanity.

share|improve this answer
show 2 more comments

I'm not really sure about your definition of simple. If by simple you mean easy to use, I don't see what is wrong with Eclipse. A couple people above have recommended Dev-C++ and I must warn you that Dev-C++ is very outdated and if you are considering using it I strongly urge you to use wxDev-C++ instead. It is essentially the same project but it has been actively worked on a little more recently. Of course there is always MSVC++ but that isn't any more "simple" than Eclipse. It seems to me like you are looking for something like notepad++ or Crimson Editor. The problem with those is that they don't contain the features you specifically request and you still need to choose a compiler to use as they are only text editors.

Just curious, what exactly is it about Eclipse that has you against wanting to use it? Perhaps there is some detail we could clear up for you that would make it easier for you to use?

share|improve this answer
show 1 more comment

I like Dev C++ pretty good (for both C and C++) and light weight. It uses GCC (GNU Compiler Collection) as it's compiler. In future, if at you plan to switch to C++, you can continue with Dev C++.

share|improve this answer
2  
Dev-C++ hasn't seen updates, maintenance, or even a repackaging in several years. For the good of us all, please don't use it. If you must have Dev-C++, get wxDev-C++ instead. – greyfade Apr 28 '11 at 22:44
show 2 more comments

I used Miracle C when I was learning C and found it excellent.

Check it out at - http://www.c-compiler.com/

share|improve this answer
show 1 more comment

You can use good ol' Eclipse, it's cross-platform, and they offer an IDE specially for C/C++ developers

share|improve this answer
1  
Eclipse? Lightweight? – Donal Fellows Oct 19 '11 at 8:08
show 2 more comments

I recommend C-Free.

  • Version 5.0 fulfills all your requirements. But it's not free.
  • Version 4.0 is free but lacks auto-completion and "jump to implementation".

I hope some day version 6 will be released and version 5 will be made free.

share|improve this answer

If you want auto-completion you essentially need an IDE, not a programming editor, because you need it to understand the text as seen by a compiler.

Some editors like vi and emacs have auxiliary programs which can generate data tables providing similar functionality, but they still cannot reach the sophistication level available in modern IDE's. I don't think you will find that satisfactory.

Then comes the question what you should use then. Will Visual Studio Express do?

(I believe can be used for everything these days, it just lacks functionalty compared to the expensive one)

share|improve this answer
show 3 more comments

I used to code in Turbo C, yes it is too old. But that is what comes to my mind when I think about C [reminds me of early days when I learned coding]. But I prefer wxDev-C++ when comes to real development.

share|improve this answer

I don't know if it's 'simple' or not, but I'd go with NetBeans any day of the week.

If you want to go this route, it might be useful to read How to correctly configure NetBeans 6.7 and C on Windows - a little dated, but good if you want to use MinGW as the build environment, and of course check out Configuring the IDE for C/C++/Fortran

share|improve this answer

I know that eclipse has a C++ module as well, I've used it once a long time ago for a class but I can't say how great it is these days. You can find it here

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.