我计划使用 Microsoft Visual Studio 2012 用 C 语言编写应用程序。问题是我找不到在编辑器中直接编译它的方法。我找到了这个解决方案http://msdn.microsoft.com/en-us/library/bb384838.aspx但我不喜欢它。你能推荐我一种在 Visual Studio 2012 中编译 C 程序的方法吗?
6 回答
在 VS2010 中编译纯 C90 和 C++x0(仅部分支持)项目有点棘手(可能还有 Visual Studio 11,我还没有尝试过原生开发)。
你要做的是创建一个没有预编译头文件的新 C++ 项目——如果你想编译一个独立于平台的代码(库、控制台应用程序),这是主要的要求。
有几种方法可以做到这一点。一种方法是创建一个普通的 Win32 C++ 控制台应用程序,在打开的向导中,您应该转到第二页(通过单击“下一步”),然后取消选中“包含预编译头”选项。然后就可以直接在VS中编译C++(和C)项目了。
还要检查“属性 -> c/c++ -> 高级 -> 编译为”确保它显示“c 代码”
或在命令行上使用 /TC
在 Visual Studio 中创建一个空的 C++ 项目(文件 -> 新建项目 -> Visual C++ -> 空项目),然后添加一个扩展名为 .c 的源文件(右键单击项目,选择添加 -> 新建项目 -> C++ 文件 (.cpp),并更改文件名)。
构建时,编译器会将其编译为 C 代码(请注意,Visual C++ 仅支持 C90,不支持 C99,因此无法使用较新的 C 语言功能)。
默认情况下,Visual C++ 编译器将所有以 .c 结尾的文件视为 C 源代码,并将所有以 .cpp 结尾的文件视为 C++ 源代码。要强制编译器将所有文件视为 C 而不管文件扩展名,请使用 /Tc 编译器选项。
来源:MSDN Visual Studio 2013, http: //msdn.microsoft.com/en-us/library/bb384838.aspx 演练
转到菜单命令以打开“项目-> 属性”对话框。然后在“配置属性”中选择“C/C++ -> 高级”窗格。将“编译为”下拉框从“默认”更改为“编译为 C 代码 (/TC)。单击“应用”按钮,然后单击“确定”关闭对话框。
选择新项目,win 32console应用程序,取消选中预编译头,选择空项目..然后添加一个新项目,选择..cpp文件,然后用.c.extension重命名文件,你就完成了编译c代码..