如何阻止VS2010自动包含Ansi C项目的文件

时间:2013-10-17 14:41:32

标签: c visual-studio-2010 ansi vs2010-express

我正在重构遗产,我需要依靠编译器。 Visual Studio中的某些设置工作不像我希望它工作。

档案a.c

int main (int i, char** l)
{
    dostuff(i);
}

文件b.h

//empty header

文件b.c

void dostuff(int i);


void dostuff(int i)
{
    //bla
}

a.c不包括b.h,也不包括b.h意味着dostuff。由于dostuff不是静态的,因此导出符号。如果我删除b.c,则编译失败。

我想设置vs2010,以便为a.c生成错误,因为符号dostuff未通过include导入。

我会采用什么设置?

1 个答案:

答案 0 :(得分:1)

首先,你的代码应该生成一个warning(在第3级),这样你就可以从编译后看到出现问题。如果您想要错误:

您可以在#pragma warning (error : 4013)文件中添加a.c

或者将/we4013添加到Configuration properties->C/C++->Command Line

下的其他选项中

这会将您的代码生成的警告视为错误