对几个变量在定义时赋初值可以写成:int a=b=c=3;

[复制链接]
查看11 | 回复4 | 2012-3-16 13:24:04 | 显示全部楼层 |阅读模式
不可以;int a=b=c=3;计算机会理解为:int a=(b=c=3);=可以作为运算符。到网上分别搜一下 赋值运算 赋值操作。语义是:计算 表达式 (b=c=3) 的值。如果你的b c 没有定义,那么这个表达式会失败 'b' : undeclared identifier'c' : undeclared identifier将值赋值给 a;int a=b=c=3;这句表达式只是定义a,但是同时给a b c赋值3....
回复

使用道具 举报

千问 | 2012-3-16 13:24:04 | 显示全部楼层
不可以的会有:error C2065: 'b' : undeclared identifier……要写成定义的时候初始化,要分开写的int a=3,b=3,c=3;这样子,或者int a,b,c;a=b=c=3;...
回复

使用道具 举报

千问 | 2012-3-16 13:24:04 | 显示全部楼层
恩,这样写是正确的!但是共用一个存储单元!...
回复

使用道具 举报

千问 | 2012-3-16 13:24:04 | 显示全部楼层
应该分开写,写成int a=3,b=3,c=3...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行