c语言中a+=a*=6是什么意思?

2024-12-15 12:04:35
推荐回答(2个)
回答1:

在C语言中

复合赋值运算符+=和*=结合性都是自右向左的
所以先计算,a*=6 即a=a*6 得到一个a的值
然后再计算a+=a,即a=a+a,将刚刚得到的a的值代入计算即可

回答2:

回答的好请采纳哦!!!

这是C语言中的“右移运算符”。一般情况下,他是按位操作。
特点:1.双目运算符,就像+、-、*、/一样,格式为(数1)>>(数2)
2.数1是被操作数,如被减数、被除数等;数2是右移位数。
3.优先级低,结合性:从左向右运算
如:8>>1=?表示将被移数向右移动1位

如何操作?
1.化十进制数为(注意了)对应的二进制数,对应指格式对应
2.通通右移,不足补0
3.化为十进制数
举例:short int a=8;a=a>>1;

1.a=0 000 1000
2.右移一位后:a= 0 000 100
3.补0:a=0 000 0100
4.化为十进制数:a=4

举例:int a=8;a=a>>1;
1.a=0 000 0000 0000 1000
2.右移一位后:a= 0 000 0000 0000 100
3.补0:a=0 000 0000 0000 0100
4.化为十进制数:a=4