c语言中,声明和定义有什么区别

 我来答
z6165008
2018-05-26 · TA获得超过18万个赞
知道答主
回答量:13
采纳率:0%
帮助的人:5414
展开全部

变量的定义用于为变量分配存储空间,还可以为变量指定初始值。在一个程序中,变量有且仅有一个定义。

声明用于向程序表明变量的类型和名字,定义包括声明:当定义变量时声明了它的类型和名字。可以通过使用extern关键字声明变量名而不定义它。不定义变量的声明包括对象名、对象类型前的关键字extern。


拓展资料:


声明变量


声明变量的一种方式是使用Dim语句、Public语句和Private语句在Script中显式声明变量。

例如:
Dim Degrees Fahrenheit


声明多个变量时,使用逗号分隔变量。例如:


Dim Top, Bottom, Left, Right


另一种方式是通过直接在Script中使用变量名这一简单方式隐式声明变量。这通常不是一个好习惯,因为这样有时会由于变量名被拼错而导致在运行Script时出现意外的结果。因此,最好使用Option Explicit语句显式声明所有变量,并将其作为Script的第一条语句。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
盛大2012
2016-09-02
知道答主
回答量:6
采纳率:0%
帮助的人:7.7万
展开全部
声明是引入标识符和标识符的类型(类型可以是整形,函数,浮点型等)。声明也可理解为是让编译器知道有这么个标识符,方便以后引用。如下面这些声明语句:

extern int i;
extern double d;
extern int foo(int, int);
double f(int, double); // 函数声明时extern可以省略。

定义实际是实例代(或实现)标识符。可为标识符分配存储空间,还可为标识符指定初始值。如下是定义的语句:

int i;
double d = 3.14;
int foo(int lhs, int rhs) {return lhs*rhs;}
double f(int i, double d) {return i+d;}

定义可以代替声明,因为在定义的时候我们也指定了标识符和类型。但所有标识符只能有一次定义,而声明可以有多次,如下声明在C和C++中都是合法的:
extern int i;
extern int i; //多次声明了变量i
extern double d;
extern double d;//多次声明了变量d
double f(int, double);
double f(int, double);//多次声明了函数f

若同一个标识符多次定义,则编译器不知道哪个定义才是标识符的实现,编译会通不过。而多次声明不会,它只是告诉编译器有这么个标识。区分声明和定义相当重要,一个叫秒秒学的教程网站上的多个课程如《Java基础课程》和《C语言基础》中都有说明这个问题,推荐你去看看,希望对你有帮助。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
吉祥二进制
高粉答主

2015-05-22 · 科技改变生活,生活改变科技。
吉祥二进制
采纳数:33922 获赞数:84595

向TA提问 私信TA
展开全部
变量的定义用于为变量分配存储空间,还可以为变量指定初始值。在一个程序中,变量有且仅有一个定义。

声明用于向程序表明变量的类型和名字,定义包括声明:当定义变量时声明了它的类型和名字。可以通过使用extern关键字声明变量名而不定义它。不定义变量的声明包括对象名、对象类型前的关键字extern。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
stream_yaya
2008-06-06 · 超过31用户采纳过TA的回答
知道答主
回答量:179
采纳率:0%
帮助的人:0
展开全部
对于变量本省而言,声明和定义没什么区别。比如说Int i;其实等同于int i=0;所以声明也就是定义。
对于函数而言,才是有区别的。比如声明函数int sum();
而定义应该给出具体的算法。int sum(int x,int y)
{return x+y;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友75015d9
2008-06-06 · TA获得超过643个赞
知道小有建树答主
回答量:196
采纳率:0%
帮助的人:276万
展开全部
变量的声明,其实就是一个空的东西,在C中就相当与一个空的指针,它什么也没有指向,没有任何实际的意义,例如int a。
而变量的定义,就不一样了,它是在内存中指定了一定的空间,一旦定义一个变量,系统自动给它分配一定的内存空间。它是有一定的实际意义的。例如int a=10。
两者区别:
声明不为变量分配空间,而定义为变量分配空间
因此同一个变量的声明可以出现多次,而只能定义一次
中函数的声明是可以重复的,但是变量却不可以。对于变量的声明都会分配内存空间,只是这部分内存空间里存放的是随机值,直到被定义之后将赋予相应的值。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式