变量的声明和定义有什么区别?

在C语言中声明变量:
变量声明仅在编译时向编译器提供以给定类型和名称存在的变量的确定性,以便编译器继续进行进一步编译,而不需要该变量的所有细节。 在 C 语言中,当我们声明一个变量时,我们只将信息提供给编译器,但没有为它保留内存。 它只是一个引用,通过它我们只向编译器保证这个变量可以定义在函数内部或函数外部。

注意:我们可以多次声明一个变量,但只定义一次。

例如:

extern int data;
extern int foo(int, int);
int fun(int, char); // extern can be omitted for function declarations

C语言中变量的定义:
定义是为变量分配存储空间的动作。 换句话说,可以说变量定义是一种方式来说明编译器在哪里以及为变量创建多少存储通常定义和声明同时发生但不几乎同时发生。

int data;
int foo(int, int) { }

注意:当定义变量时,无需声明它,反之亦然不适用。

相关文章

在C语言中声明变量:变量声明仅在编译时向编译器提供以给定类...
全局变量和静态全局变量有不同的联系。 这就是全局变量可以在...
存储类决定程序中变量或函数的范围(生命周期)和范围(可见性)...
在C语言中,外部静态变量有内部链接,内部静态变量没有链接。...
让我们先来看一下 typedef 和宏的简短描述,以了解它们之间的...
编译器错误。 解释:typedef 已被视为部分存储类,因此不能一...