《C++ Primer Plus》學習筆記——第五章 迴圈和關係表示式(一)
阿新 • • 發佈:2018-11-06
本章內容:
- for迴圈和while迴圈
- 表示式和語句
- 運算子組合
- 複合語句
- 逗號運算子以及關係運算符
- typedef工具
- 字元輸入方法get()
- 檔案尾條件
- 巢狀迴圈和二維陣列
計算機除了儲存資料外,還可以做很多其他工作。可以對資料進行分析、合併、重組、抽取、修改、推斷、合成以及其他操作。
for迴圈
組成部分完成以下步驟:
- 設定初始值。
- 執行測試、看看迴圈是否應當繼續進行。
- 執行迴圈操作。
- 更新用於測試的值。
結構:
for (initialization;test-expression;update-expression) { body; } //initialization用於設定初始值;可以在裡面宣告變數,但變數只能在迴圈中使用。 //test-expression用於判斷迴圈體是否需要被執行。當值為0或false時迴圈結束。 //update-expression用於更新判斷迴圈體中被測試的值。 //body 迴圈的內容
C++程式在需要整數值的地方將true和false分別轉換成1和0,而在需要bool值的地方講把0轉換成false,將1轉換成true。
cout.setf(ios::boolalpha)函式呼叫設定了一個標記,該標記命令cout顯示true和false,而不是0和1。
遞增遞減運算子(++)和(--)
int c=1;
int y;
y=c++;
c=1;
y=++c;
c=1;
y=c--;
c=1;
y=c++;
//第一個y的值為1,但c變成了2;
//第二個y的值為2,同樣c變成了2;
//第三個y的值為1,但c變成了0;
//第四個y的值為0,c同樣為0;
遞增(減)運算子與指標:
double arr[5]={0,1,2,3,4} double *p=arr; *p++; p++; //p++為地址的變化,*p++為該地址值的變化
組合賦值運算子:
i=i+b; = i+=b;
i=i-b; = i-=b;
i=i*b; = i*=b;
i=i/b; = i/=b;
可以使用兩個花括號{}來構造複合語句。
逗號運算子:
允許將兩個表示式放到C++語句只允許放一個表示式的地方。如i++,--y;
但逗號表示式的值為第二部分的值。
比較和賦值容易混淆。如 music==4(比較)與music=4(賦值)。
比較字串時,應使用cstring中的strcmp()函式。
比較string類字串時,可以使用關係運算符,如果左邊是string類,右邊是C-風格字串也可以使用關係運算符。