2

I'm using VS 2010. I have changed the settings for compiler C code instead of C++. It works fine, but the problem is MS compilers don't supports C99 standard,for this reason I'm looking for a C compiler that can works with VS 10. How to do this? Thanks in advance.

Jack
  • 16,276
  • 55
  • 159
  • 284
  • What aspects of C99 do you need? AFAIK some aspects *are* implemented in the VS 2010 compilers. – 0xC0000022L May 22 '12 at 22:04
  • Well, things like: `//`, `for(int i = 0; .. )` and `enum { A, B } char*foo[] = { [A] = "..", [B] = "$.." };` (I have a lot of code using this). The solution is migrated for a compiler that really supports C99, once I can't change the default compiler of VS,right? – Jack May 23 '12 at 01:25

1 Answers1

2

MS visual studio don't support c99, however they have implemented certain features of c99.

From this Microsoft page, their reply for c99 support:

Question by a user:

"I would like to see C99 support available in Visual Studio. The amount of work to add C99 support should pale in comparison to C++0x.

As the compiler for the dominant PC platform, Microsoft should really try harder to implement a standard that's over 10 years old -- especially because the C community is arguably larger than the C# or C++ community."

Microsoft's reply:

"Unfortunately 1) There are many, many more users of the Microsoft C++ compiler than there are of the C compiler; 2) Anytime we do customers discussion and/or solicit feedback the overwhelming response is that we should focus on C++ (especially at the moment C++-0x); 3) We just don't have the resources to do everything we would like. So while we are slowly improving our C-99 support (and we are active in the C-1x discussions) I can't promise we'll add any of these features."

Community
  • 1
  • 1
P.P
  • 117,907
  • 20
  • 175
  • 238
  • MSC supports all c89 but limited c99 features. So you can't do that. Otherwise, you may run into problems when you use some latest gcc (c99 or c11) features. – P.P May 23 '12 at 14:23