tnjk.net
当前位置:首页 >> 在C语言中i+=3是什么意思 >>

在C语言中i+=3是什么意思

+=是C语言中的自加赋值运算符 x += 3 ; 相当于: x=x+3 ; 与之相类似的运算符还有: *= 自乘一个数 -= 自减一个数 /= 自除一个数 %= 自模一个数 >>= 自身右移n位

i+3的结果跟3取反后的数相与,结果赋给i; 再一步简化,i+3的结果的二进制数中最低两位置零,该结果赋给i;

#include void main(int argc,char* argv[]) { int i=3; i = ((i + 3)&(~3)); printf("%d",i); } 结果4 表达式为二进制运算: i+3=4 ~3=-4 4&(-4)=4 如下: 数 二进制 十进制 3 00000000000000000000000000000011 3 i+3 00000000000000000000000...

(i%3) 就是i除以3的余数。 如果是作为逻辑表达式,那就是“i除以3的余数不等于0"。

++在前是先给变量的值自加,及自身加一,再用变化后的值去参与运算。而++在后,则是先用原来的值参与运算,遇到一个特殊序列点(&&或||或,或?:或;)才使变量自加。若b=3,a=b++;则a=3,b=4.若a=++b,则a=4,b=4.

这个要分两个角度。 先取值,再自加。 所以 表达式的值是-i也就是-3 执行后,i值为4.

&&在C语言中是逻辑与的意思,他的运算规则是true&&true的结果是true,其他的(true&&false,false&&true,false&&false)结果都是false 这句话的意思就是i小于等于3并且*p的值为真

i=i+1

a[i][j]表示二维数组的第i行第j列,a[i][j]=i*3+j+1是赋值语句,将i*3+j+1赋值给a[i][j]

i+=n 中 += 是1个运算符号。 等价于 i=i+n; 意思是 给 i 添加一个 增量 n, 变成 i+n.

网站首页 | 网站地图
All rights reserved Powered by www.tnjk.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com