int a,b,c; long int d; b=(a=32767,a++); c=d=0xfff
int a,b,c; long int d; b=(a=32767,a++); c=d=0xfff
日期:2021-06-18 14:05:11 人气:1
输出的结果应该是
8000,32767,65535,65535
b=(a=32767,a++)
这里有个++和逗号运算符
先看a的值,a的值首先为32767
逗号运算符的结果是自左向右的
所以b的值在a++的结果中
b=a++就是b=a然后a=a+1
所以a的值是32768
b的值是32767
0xffff就是65535
二进制表示为
1111111111111111
答案里
8000,32767,65535,65535
b=(a=32767,a++)
这里有个++和逗号运算符
先看a的值,a的值首先为32767
逗号运算符的结果是自左向右的
所以b的值在a++的结果中
b=a++就是b=a然后a=a+1
所以a的值是32768
b的值是32767
0xffff就是65535
二进制表示为
1111111111111111
答案里