【C语言】C语言中赋值语句规则

【C语言】C语言中赋值语句规则

由于在赋值符“=”右边的表达式也可以又是一个赋值表达式, 因此,下述形式 变量=(变量=表达式); 是成立的,从而形成 嵌套的情形。 其展开之后的一般形式为:变量=变量=…=表达式; 例如: a=b=c=d=e=5; 按照赋值运算符的右接合性,因此实际上等效于: e=5; d=e; c=d; b=c; a=b;

注意在变量==说明==中给变量赋初值和赋值语句的区别。 给变量赋初值是变量说明的一部分,赋初值后的变量与其后的其它同类变量之间仍必须用逗号间隔,而赋值语句则必须用分号结尾。 例如: int a=5,b,c;

在变量说明中,不允许连续给多个变量赋初值。 如下述说明是错误的: int a=b=c=5 必须写为 int a=5,b=5,c=5; 而赋值语句允许连续赋值。

注意赋值表达式和赋值语句的区别。 赋值表达式是一种表达式,它可以出现在任何允许表达式出现的地方,而赋值语句则不能。

下述语句是合法的:

if((x=y+5)>0) z=x;

这里(x=y+5)是赋值表达式,语句的功能是,若表达式x=y+5大于0则z=x。

下述语句是非法的:

if((x=y+5;)>0) z=x;

因为x=y+5;是语句,不能出现在表达式中。

猜你喜欢

CAJViewer的下载与使用
365bet官网网址

CAJViewer的下载与使用

07-03 7431
人类表情至少有21种:6种基本 15种复合(图)
巴士管家怎么退票?巴士管家app退票教程
铁甲雄兵 国服中文客户端
365体育平台

铁甲雄兵 国服中文客户端

07-10 5597
当年的塞班系统流畅度堪比iOS,占用内存也不大,为何还会被市场淘汰?
iG夺冠,LOL续命
365体育平台

iG夺冠,LOL续命

07-08 787