C++逗號操作符
逗號操作符的目的是串在一起的幾個表達式。一個逗號分隔的表達式列表的值是最右邊的表達式的值。從本質上講,逗號的作用是使將要執行的一係列操作。
其他表達式的值將被丟棄。這意味著,在右側的表達式將成為整個逗號分隔的表達式的值。例如:
var = (count=19, incr=10, count+1);
在這裡先分配算值19,分配增量值10,然後加1計數,最後var分配的最右邊表達式的值,計算+1,這是20括號是必要的,因為逗號操作符有優先級低於賦值運算符。
若要查看逗號操作符的效果,嘗試運行下麵的程序:
#include <iostream> using namespace std; int main() { int i, j; j = 10; i = (j++, j+100, 999+j); cout << i; return 0; }
當上述代碼被編譯和執行時,它產生了以下結果:
1010
下麵是如何計算i值的步驟:j開始值為10 再增加到11。接著,j被添加到100.最後,j(仍含11)加入到999,這產生了結果1010。