2.3增1和减1运算
增1运算符++(使变量的值增加一个单位)
减1运算符--(使变量的值减少一个单位)
注:两种运算符均属于一元运算符,且分为前缀和后缀,且操作数(n)只能是变量,不能是表达式
即n的值应为一个自然数,而不应该是-n或n+1等
前缀:++n➡n=n+1 --n➡n=n-1
后缀:n++➡n=n+1 n--➡n=n-1
(1)作为前缀运算符时
++n --n 先对增1/减1,然后再使用n的值
如 m=++n; 即为 n=n+1; m=n; 若n=2,则m=3,n=3
又如printf(“%d”,++n);即为 n=n+1; printf(“%d”,n);若n=2,则输出数值为3,n=3
(2)作为后缀运算符时
n++ n-- 先使用n的值,然后再对n增1/减1
如 m=n++; 即为 m=n; n=n+1;若n=2,则m=2,n=3
又如printf(“%d”,n++);即为 printf(“%d”,n); n=n+1;若n=2,则输出数值为2,n=3
(3)前缀和后缀对变量和表达式的影响
m=++n-2;➡ n=n+1; m=n-2; 若 n=6,则 n=7, m=5
m=n++-2;➡ m=n-2; n=n+1; 若 n=6,则 n=7, m=4
(4)稍复杂的例子
printf(“%d”,-n++); 即为 printf(“%d”,-n); n=n+1;若 n=5 则输出值为-5 而n=6
(5)总结