Все еще путают с декларацией и определением в терминах C:
если заголовочный файл имеет вид:
#ifndef _BASIC_H_
#define _BASIC_H_
void test();
extern int i; //define or declare
#endif
и два исходных файла f1.c и f2.c содержат этот заголовок, тогда один исходный файл должен определить переменную "i".
но если заголовочный файл имеет вид:
#ifndef _BASIC_H_
#define _BASIC_H_
void test();
int i; //define or declare
#endif
и два исходных файла f1.c и f2.c, содержат этот заголовок без определения переменной «i» в любом файле, он все равно проходит, когда я использую переменную.
мои вопросы, когда переменная определена.
Спасибо