1. 程式人生 > >C++基礎知識(二)--左值右值--邏輯表示式求值優化--逗號運算子與表示式

C++基礎知識(二)--左值右值--邏輯表示式求值優化--逗號運算子與表示式

一、C++左值右值概念

  左值:c++將變數名代表的單元稱為左值,而將變數的值稱為右值,左值必須是記憶體中可以訪問且可以合法修改的物件,因此只能是變數名,而不能是常量或表示式。即左值可以定址。

  右值:將變數的值稱為右值,由運算操作(加減乘除,函式呼叫返回值等)所產生的中間結果(沒有名字的結果)稱為右值。右值無法定址。




二、邏輯表示式求值優化

  1.C++中在求邏輯表示式的值的時候,一旦表示式的值能夠確定,就不再逐步進行下面的運算。稱為求值優化。

    

int a=10,b=20,c=30;
int result;
result=a<b||c++;
cout
<<c<<endl; 輸出結果c仍為30;

     因為由a<b已經可以確定result的值了,所以後邊的運算表示式便不再進行計算了。在進行邏輯運算時要小心。




 三、逗號運算子與逗號表示式

  1.逗號表示式:用逗號連線起來的表達稱為逗號表示式

  2.逗號表示式中的每一個表示式都會被運算,整個逗號表示式的值是最後一個表示式的值

 

a=(x=3,x+=6,5+6);
cout<<a<<x<<endl;
結果:a=11,x=9;