我和我的教授正在討論關於C中的+ =運算符。他說+ =或= +會起作用,但他不確定爲什麼= +作品。C編程:+ = vs = +
int main()
{
int i = 0, myArray[5] = {1,1,1,1,1};
while(i < 5)
{
myArray[i] += 3 + i;
printf("%d\n", myArray[i]);
i++;
}
system("pause");
}
輸出將產生4,5,6,7,8。將+ =運算符更改爲= +會得到相同的結果。然而 - =和=不一樣(這很明顯,因爲它把3當作3)。
所以C大師:
- 爲什麼用= +這項工作?
- C編譯器如何處理= +與+ =?
使用什麼編譯器會產生相同的結果? – 2011-02-16 02:33:20
將運算符更改爲= +將生成「3,4,5,6,7」。也許你忘了在重新編譯之前保存源文件? – mtrw 2011-02-16 02:35:05
你的教授無能,應該退休。 – 2011-02-16 06:22:52