使用文件本身的指令强制将文件编译为 C
Force file to be compiled as C, using a directive from the file itself
我的 C++ 项目中有一些旧代码文件需要编译为 C 代码 - 整个代码库设置为编译为 C++。
我正在使用 Visual Studio,但我宁愿避免从项目属性中设置每个文件,而是使用某种 #pragma
指令(如果可能)。
我四处搜索,但一无所获,我能想到的关闭方式是添加一个 #ifdef
,检查 __cplusplus
,如果这样做则失败。
基本上我正在寻找一种从源代码注入 /Tc, /Tp, /TC, /TP (Specify Source File Type) 命令的方法。
“默认情况下,CL 假定扩展名为 .c 的文件是 C 源文件,扩展名为 .cpp 或 .cxx 的文件是 C++ 源文件。”
因此,如果需要,请重命名文件并将新的 c 文件放入您的项目。
如果需要,设置编译器选项:
Set compiler
我的 C++ 项目中有一些旧代码文件需要编译为 C 代码 - 整个代码库设置为编译为 C++。
我正在使用 Visual Studio,但我宁愿避免从项目属性中设置每个文件,而是使用某种 #pragma
指令(如果可能)。
我四处搜索,但一无所获,我能想到的关闭方式是添加一个 #ifdef
,检查 __cplusplus
,如果这样做则失败。
基本上我正在寻找一种从源代码注入 /Tc, /Tp, /TC, /TP (Specify Source File Type) 命令的方法。
“默认情况下,CL 假定扩展名为 .c 的文件是 C 源文件,扩展名为 .cpp 或 .cxx 的文件是 C++ 源文件。”
因此,如果需要,请重命名文件并将新的 c 文件放入您的项目。
如果需要,设置编译器选项: Set compiler