最近我试图使用以下代码:
int number = 4; number += other_variable;//2 ... printf("Number:%d\n",number);//-->6
但我输入错误,而是我有这个代码:
int number = 4; number =+ other_variable;//2 ... printf("Number:%d\n",number);//-->2
显然这是用gcc 4.7.3
和编译的,gcc 4.4.3
结果是一个正常的赋值运算符.该问题是:应该不是这个是一个语法错误?
不 - 这被解析为:
number = +other_variable;
即你有任务和一元+操作员.你正在读它,=+
但它是两个独立的运算符,=
并且+
.