我有一个头文件(head.h),我在其中定义了布尔值:
bool flag = false;
在main.c中,我有一个函数:
void WINAPI function (HINSTANCE hThisInstance,
HINSTANCE hPrevInstance,
LPSTR lpszArgument,
int nFunsterStil)
{
if (flag == false)
{
//Some action
flag = true;
}
}
即使main.c以行开头,也无法识别布尔值'flag':
#include "head.h"
...为什么?
答案 0 :(得分:1)
我相信你将#include "head.h"
放在main.c
的顶部(#include "stdafx.h"
之前)并使用预编译的标头(至少我是如何使用Visual Studio重现您的问题的)。 #include "stdafx.h"
应始终先行。
答案 1 :(得分:0)
“不承认”是什么意思?是否编译无法定义flag
?
否则,在您展示的代码中,有一个问题,即标记从未设置过。