相关疑难解决方法(0)

声明和定义

仍然与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

2
推荐指数
1
解决办法
865
查看次数

标签 统计

c ×1