a+++++b的含义是什么?
是相当于((a++)++) + b还是相当于a++ + ++b?求解 会报错D:\C语言\未命名1.c In function 'main':
D:\C语言\未命名1.c lvalue required as increment operand
大意信息:自增运算符操作数是变量,表达式的结果是常量
不过这样写明显具有多义性,违反了程序的基本特性 #include <stdio.h>
int main()
{
int a = 23;
int b = 35;
int c = 0;
c = a+++ ++b; // 三个加号之后有一个空格,这样写就相当于 (a++) + (++b)
// 五个加号连写会报错,又若写两个加号后一个空格三个加号也会报错
printf("%d\n",a);// 输出24
printf("%d\n",b);// 输出36
printf("%d\n",c);// 输出59
}
页:
[1]