다음 코드가 있습니다.
#include <stdio.h>
int main(int argc, char **argv) {
int i = 0;
(i+=10)+=10;
printf("i = %d\n", i);
return 0;
}
gcc를 사용하여 C 소스로 컴파일하려고하면 오류가 발생합니다.
error: lvalue required as left operand of assignment
그러나 g ++를 사용하여 C ++ 소스로 컴파일하면 오류가 발생하지 않고 실행 파일을 실행할 때 :
i = 20
왜 다른 행동입니까?