Suggestions for a free C Compiler and Debugger please

Hi all looking for suggestions for something free and good to practice C code in .

I run on windows Vista so need something compatibale with that ...

reason im asking is there is so many to choose from and im not sure what i should really be looking for ...

not knowing what each one has or has not im really looking for one that has a debugger ... not sure if they all have this feature or not as the only programm im used to programming in is the arduino programmer and this dosent use a debugger.

on the course we use a restricted version of keil ... and i find the debugger great as you can go through the programm line by line as it runs and really see what is happening and if your getting unusual results from your code its easier to pick them up with this feature .

and as a lot of you have a lot of experience with C code i though you could point me in the right direction before i start down loading and trying out different ones .

 

Microsoft?

Microsoft Visual Studio has free editions.

I’m having diffuculty

I’m having diffuculty understanding what type of compiler/debugger you want, something native for your PC or to cross compile for a microprocessor (I’m guessing microcontroller development but you didn’t specify)?  If you are talking about a microprocessor, which variety (ie ARM Cortex-M3, Atmel AVR, Microchip PIC, etc)?  Also note, sometimes “free” comes with limitations (ie non commercial use only, debugger code size limitations, etc) so I would consider that as well.  Another thing about debuggers is they are normally run in an IDE, so you are asking for IDE recommendation there which is separate from the compiler or cross compiler.

I’d personally recommend the following free IDEs (for use with open source GCC compiler):

For programming C applications on your PC I recommend using Eclipse CDT (and to use GCC for the compiler) which will allow you to debug your code running in the IDE.  This IDE is cross platform so it will work on Linux, Windows, and other OSs.  Eclipse is open source so you could literally create your own IDE with it (using Eclipse RCP), not to mention you will likely end up using other Eclipse based IDEs which will then be very familiar if you are already used to working with Eclipse (and you may want to import settings as well).

For programming microcontrollers you’ll need an IDE and toolchain setup to cross compile for your embedded target, which may be supported by GCC.  For Atmel AVR I use Atmel Studio 6 IDE (and an AVR-GCC toolchain to compile) as it has debugger support and the IDE is basically Visual Studio 2010, which is a powerful IDE.  For developing for ARM Cortex-M3 targets my preferred IDE is CooCox (and a GCC toolchain for cortex-M3) which has a debugger and is an Eclipse based IDE without usage limitaions.  For Microchip PIC development you may find it easiest to use MPLAB IDE, which has a debugger and is based on Netbeans IDE.