C语言变量的定义和声明有什么不同?

C语言中的变量定义是什么?变量的声明是什么?区别又是怎样的?

第1个回答  2008-06-06
变量的声明,其实就是一个空的东西,在C中就相当与一个空的指针,它什么也没有指向,没有任何实际的意义,例如int a。
而变量的定义,就不一样了,它是在内存中指定了一定的空间,一旦定义一个变量,系统自动给它分配一定的内存空间。它是有一定的实际意义的。例如int a=10。
两者区别:
声明不为变量分配空间,而定义为变量分配空间
因此同一个变量的声明可以出现多次,而只能定义一次
中函数的声明是可以重复的,但是变量却不可以。对于变量的声明都会分配内存空间,只是这部分内存空间里存放的是随机值,直到被定义之后将赋予相应的值。
第2个回答  2008-06-06
对于变量本省而言,声明和定义没什么区别。比如说Int i;其实等同于int i=0;所以声明也就是定义。
对于函数而言,才是有区别的。比如声明函数int sum();
而定义应该给出具体的算法。int sum(int x,int y)
{return x+y;
}
第3个回答  2008-06-06
定义包括声明和使用,也有的定义就是声明。
例如:
int i;//声明(也有叫定义)
i=2;//使用
我把两个合起来的叫定义
相似回答