views:

232

answers:

2

I have the following code snippet. This is a c file in visual studio 2010. If i try to compile this with the line: int hello = 10; commented out it will compile just fine. If I comment that line in it will not compile. Am I missing something or should I not be using Visual Studio 2010 to compile C code. If this is a Visual Studio problem can anyone recommend a easy to use IDE / Compiler that I can for C.

Thank You

int* x = (int*) calloc(1, sizeof(int));

*x = 5;

//int hello = 10;

printf("Hello World!  %i", *x);

getchar();
+13  A: 

You can't have declarations (like int hello = 10;) after non-declarations (like *x = 5;) in C89, unlike C99 or C++.

MSVC 2010 still does not support C99.

Jonathan Leffler
+1, wow, I am impressed ^^
Max
I guess 11 years isn't quite enough time for a multi-billion dollar corporation to implement a standard. Seriously, what could be the reason for the lack of support?
Mark Rushakoff
+1  A: 

you can still declare variables after coding. just change the "yourProject.c" file to "yourProject.cpp" and it will work fine.

user1