直接开门见山好了!
对于一个变量的定义、声明和怎么去使用 以下是个人简述:
定义变量 分配存储空间 同时可以初始值赋值,记住程序中变量的定义有且只有一次。
声明变量 不分配存储空间 展示变量的基础类型和名字信息,这里和定义不同声明可以多次。
声明后的变量方可使用,extern关键词的妙用比如有a.c b.c c.h三个文件:在a.c 中声明了一个外部a变量 但是还用到了其他的外部变量 b、c 这里没用声明但b、c确实定义了,在a.c文件中 声明extern int a;a.c头文件包含了#include "c.h" ,在文件c.h中就使用到了 extern int b和c。这样a.c里面的变量就全部能使用了 也进行了声明。
c基础的书籍里有对两者的说明:定义是特殊的声明,分配内存空间。声明并不分配内存
声明不一定是定义,但定义一定包含了声明。一个变量只能定义一次,但可以多次声明。
代码贴在下面了
a.c
extern int a;
int main(void)
{
printf("演示开始\n");
fun1();
printf("演示打印结束\n");
return 0;
}
b.c
#include <stdio.h>
int a=2;
int b=10