int main ()
{
int a = 5,b = 2;
printf("%d",a+++++b);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
此代码提供以下错误:
错误:需要左值作为递增操作数
但是,如果我把整个空间a++ +和++b,然后正常工作.
int main ()
{
int a = 5,b = 2;
printf("%d",a++ + ++b);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
第一个例子中的错误是什么意思?
可能重复:
为什么+++++ b在C中不起作用?
我从David Simon的"嵌入式软件入门"第113页得到了这个.
我在下面看到这句话:
iHoursTemp = iHoursTemp + iZoneNew ---iZoneOld;
Run Code Online (Sandbox Code Playgroud)
你能真的在这条线上有三个减号吗?三重减号是什么意思?
我相信这是一个C编程声明.
以下代码让我感到困惑
int a=2,b=5,c;
c=a+++b;
printf("%d,%d,%d",a,b,c);
Run Code Online (Sandbox Code Playgroud)
我预计输出为3,5,8,主要是因为a ++意味着2 + 1等于3,而3 + 5等于8,所以我预期3,5,8.事实证明结果是3,5,7.有人可以解释为什么会这样吗?