這裏是我的代碼爲什麼我在增量錯誤得到一個無效的左值
#include <stdio.h>
int main(void)
{
int x[] = {10,20,30};
*(x) ++;
}
當我嘗試編譯此,我「在增量無效的左值」得到一個錯誤。我不明白爲什麼有任何無效的價值。我知道數組名是一個指向數組中第一個元素的指針。是不是 *(x)++與*(x)= *(x)+ 1相同?所以x [0]現在會是11.有什麼我失蹤?我不改變數組指針。我知道這將是一個錯誤。
刪除括號。 – 2014-10-29 00:00:40
沒有工作。我在這裏有正確的想法嗎? – committedandroider 2014-10-29 00:01:19
我的不好,改爲'(* x)++;'後置增量運算符的綁定比解除引用運算符更緊密,所以圍繞'* x'的括號是必需的。 – 2014-10-29 00:02:47