仍然与C语句中的声明和定义混淆:如果头文件如下:
#ifndef _BASIC_H_
#define _BASIC_H_
void test();
extern int i; //define or declare
#endif
Run Code Online (Sandbox Code Playgroud)
两个源文件f1.c和f2.c包含这个头,然后一个源文件需要定义变量"i".
但如果头文件是这样的:
#ifndef _BASIC_H_
#define _BASIC_H_
void test();
int i; //define or declare
#endif
Run Code Online (Sandbox Code Playgroud)
和两个源文件f1.c和f2.c,包含这个头,没有在任何文件中定义变量"i",当我使用变量时它仍然会通过.
我的问题是定义变量的时候.
谢谢
c ×1