如何在VisualStudio2010中编译普通C文件,或者只理解C89?

如何在VisualStudio2010中编译普通C文件,或者只理解C89?,c,visual-studio-2010,C,Visual Studio 2010,我正试图在VisualStudio2010中编译。我从Win32库项目布局开始。我注意到stdafx.cpp被创建并删除了该文件以及生成的头文件。现在我仍然会遇到如下编译错误(内联为注释): 到 Visual Studio不支持C99,Microsoft也没有计划支持C99,请参见此处:Visual Studio不支持C99,Microsoft也没有计划支持C99,请参见此处:谢谢,这简直令人难以置信,要么我必须手动更改所有代码,要么在交叉编译时阅读数小时。C99介绍了一些很棒的东西。我知道他们

我正试图在VisualStudio2010中编译。我从Win32库项目布局开始。我注意到stdafx.cpp被创建并删除了该文件以及生成的头文件。现在我仍然会遇到如下编译错误(内联为注释):


Visual Studio不支持C99,Microsoft也没有计划支持C99,请参见此处:

Visual Studio不支持C99,Microsoft也没有计划支持C99,请参见此处:

谢谢,这简直令人难以置信,要么我必须手动更改所有代码,要么在交叉编译时阅读数小时。C99介绍了一些很棒的东西。我知道他们的发展前景是集中在C++、C等方面的,但是我还是发现,世界上最大的软件公司没有,而且显然不感兴趣的是一个支持14年标准的C编译器。但事实似乎如此。我相信,关于可能支持C11的问题已经讨论过了,但是它们的库函数与同名的标准C库函数之间会存在兼容性问题,而且有些问题无法通过使用合适的typedef来解决,即使标准试图使之成为可能。请参阅以获取更多信息和示例。谢谢,这简直是难以置信的,要么我必须手动更改所有代码,要么我必须在交叉编译时阅读数小时。C99介绍了一些很棒的东西。我知道他们的发展前景是集中在C++、C等方面的,但是我还是发现,世界上最大的软件公司没有,而且显然不感兴趣的是一个支持14年标准的C编译器。但事实似乎如此。我相信,关于可能支持C11的问题已经讨论过了,但是它们的库函数与同名的标准C库函数之间会存在兼容性问题,而且有些问题无法通过使用合适的typedef来解决,即使标准试图使之成为可能。有关更多信息和示例,请参阅。可能的重复-或者,听起来更匹配,但最终集中在
中的类型上。可能的重复-或者,听起来更匹配,但最终集中在
中的类型上。
OHMD_APIENTRY int ohmd_ctx_probe(ohmd_context* ctx)
{
    memset(&ctx->list, 0, sizeof(ohmd_device_list));
    int i;  // <-- error C2143: syntax error : missing ';' before 'type'
    for(i = 0; i < ctx->num_drivers; i++){  // <-- error C2065: 'i' : undeclared identifier
        ctx->drivers[i]->get_device_list(ctx->drivers[i], &ctx->list);
    }

    return ctx->list.num_devices;
}
for(int i = 0;  ...
int i;
for( i = 0; ...