1
是否可以用這種方式添加整數地址?可以用這種方式添加整數地址嗎
int i = 10;
(&i)++;
如果我嘗試這個,C編譯器給出錯誤:lvalue required as increment operand
。 任何人都可以建議,如果它可能與GCC或不?
是否可以用這種方式添加整數地址?可以用這種方式添加整數地址嗎
int i = 10;
(&i)++;
如果我嘗試這個,C編譯器給出錯誤:lvalue required as increment operand
。 任何人都可以建議,如果它可能與GCC或不?
不,你不能那樣做。 &i
會產生一個右值,不能與++
運算符一起使用,就像編譯器告訴您的那樣。如果你想指向內存剛剛過去的i
結束時,您可以使用:
int i = 10;
int *p = &i + 1;
但實際上有沒有任何理由做這樣的事情。
你期望這樣的表達要做什麼? – mafso 2014-09-30 16:21:41
爲什麼?這就是問題所在... – kotlomoy 2014-09-30 17:34:22