int x=y=10为什么不对

 我来答
魔法书的小屋
高能答主

2022-03-16 · 本人啤酒花,特别关注生活这一块
魔法书的小屋
采纳数:85 获赞数:3033

向TA提问 私信TA
展开全部

int x=y=10不对原因:声明变量的时候不能连续赋值,因为当系统执行第一个赋值语句的时候,你的y是没有定义的。

int x=10,y; y=x; x=x+1; printf("%d %d",x,y); y=y+1;x++是x=x+1的缩写,属于自加运算,y=x++;由于++写在x的后面。

因此是在y=x的赋值完成后,x再自加,同理printf中的y++也是在调用printf之后y再自加这部分内容只要会分析就可以了,一般如果感觉比较混乱,就老老实实地写,不要随便缩写,省得绕自己。

特点:

连续赋值语句的执行是:只要右边表达式任一个变量有变化,表达式立即被计算,计算的结果立即赋给左边信号。

连续赋值语句之间是并行语句,因此与位置顺序无关。

语法上,有关键词“assign”来标识。

左侧被赋值的数据类型必须是线网型数据(wire)。

连续赋值语句不能出现在过程块中(initial/always)。

连续赋值语句主要用来对组合逻辑进行建模以及线网数据间进行描述。

连续赋值语句产生作用后,赋值表达式中信号的任何变化都将立即被反映到赋值线网型数据的取值上。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式