Проверка значения, определенного в заголовке, из функции в другом файле - PullRequest
0 голосов
/ 14 мая 2011

У меня есть файл заголовка (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;
    }
}

Логическое значение 'flag' не распознается, даже если main.c начинается со строки:

#include "head.h"

... Почему?

Ответы [ 2 ]

1 голос
/ 14 мая 2011

Я полагаю, что вы ставите #include "head.h" в верхней части main.c (до #include "stdafx.h") и используете предварительно скомпилированный заголовок (по крайней мере, так я могу воспроизвести вашу проблему с Visual Studio). #include "stdafx.h" всегда должен идти первым.

0 голосов
/ 14 мая 2011

Что вы подразумеваете под "не признается"?Не удается ли скомпилировать, сказав, что flag не определено?

В противном случае в представленном вами коде есть небольшая проблема, заключающаяся в том, что флаг никогда не устанавливается.

...