一个简单C语句的问题

来源:百度知道 编辑:UC知道 时间:2024/06/29 01:58:23
执行下列语句后.a和b的分别为
int a,b;
a=1+( b = 2 + 7%-4-'A')
答案是: -59,60
我觉得很奇怪,这是怎么算出来的呀.有谁可以详细地告诉一下我吗?在此谢过啦!!!

原式等价为:
b = 2 + 7%-4-'A';
a = 1 + b;

等价为:
b = 2 + 7%-4 -65;
so b = -60;
a应该 是 a = -59
刚才弄错了,现在改好了,昨天没有测试

下面是结果:
-59 -60
Press any key to continue

'A'按照AII码等于是65,7%-4等于3,所以b=2+3-65=-60
a=1+(-60)=-59