可能重複:
Error: lvalue required in this simple C code? (Ternary with assignment?)使用在表達托架包括三元運算
在下面的代碼段我得到一個錯誤,如「lvalue required as left operand of assignment
」。我無法理解爲什麼會報告這樣的錯誤。但是當我在表達式(i>j)?(k=i):(k=j)
中使用括號時,它不報告錯誤。請解釋。
int main() {
int i = 2;
int j = 9;
int k;
(i>j) ? k=i : k=j;
printf("%d\n",k);
return 0;
}
看看Nawaz的答案:http://stackoverflow.com/questions/6966299/error-lvalue-required-in-this-simple-c-code-ternary-with-assignment – phoxis