小古銀的官方**(完整教程):
基本資料型別bool
是乙個比較有趣的型別。它只能儲存兩個值,true
和false
。只有兩個值的情況在**中隨處可見的如:是否、有沒有,開關等。
bool
除了可以儲存true
和false
,它也可以儲存數字,數字0
與false
等價,非0
數字與true
等價。但由於數字代表兩個值並不直觀,所以當使用bool
時,建議使用true
/false
代替數字。
當我們需要使用std::cout
輸出true
和false
時,需要先輸出std::boolalpha
,否則只會輸出數字:
#include // std::cout std::endl std::boolalpha
int main(void)
輸出結果:
1
0true
false
比較運算子在**中也是隨處可見,比較運算子:
注意:
使用比較運算子比較兩個值,實際上是乙個計算過程。如果公式成立則計算結果是true
,如果公式不成立則計算結果是false
。舉個栗子:
#include // std::cout std::endl std::boolalpha
int main(void)
輸出結果:
false
true
true
false
true
false
以下**進行比較運算,然後用bool
變數儲存運算結果:
bool a = 10 == 9; // 公式不成立,結果是false
bool b = 10 != 9; // 公式成立,結果是true
bool c = 10 >= 9; // 公式成立,結果是true
bool d = 10 <= 9; // 公式不成立,結果是false
如果需要直接輸出計算結果,需要注意的是,必須使用()
,讓程式先計算出結果,然後再輸出:
std::cout << (10 > 9) << std::endl;
std::cout << (10 < 9) << std::endl;
說到判斷是否成立,肯定不能少了邏輯運算子。也就是下面這些:
最常用的就是數學判斷中的0 < x < 100
,但是你不能這樣寫成**。這裡的意思可以理解為:x > 0
並且x < 100
,寫成**就是x > 0 && x < 100
。
再例如x < 0
或者x > 100
,寫成**就是x < 0 || x > 100
。
#include // std::cout std::endl std::boolalpha
int main(void)
輸出結果:
女王的個人資訊:
年齡:12
男:false
女:true
女孩子:true
不是孩子:false
雖然一般從字面上可以理解,但是理解邏輯運算子的運算也是很重要的。三個邏輯運算子的計算公式如下:
對於isfemale == true
這樣一條判斷,一般都會簡化成以下形式:
isfemale
因為如果isfemale
是true
的話,true == true
結果是true
;如果是false
的話,false == true
結果是false
。因此,bool
變數判斷true
的時候可以簡化成上面的形式,直接理解單詞字面意義:是女的。
對於isfemale == false
這樣一條判斷,可以簡化成以下形式:
!isfemale
因為如果isfemale
是true
的話,true == false
結果是false
,也就是!true
;如果是false
的話,false == false
結果是true
,也就是!false
。因此,bool
變數判斷false
的時候可以簡化成上面的形式,直接理解單詞字面意義:不是女的。
輸入乙個整數數值,然後一次過輸出以下幾個問題的答案:
HTML入門教程6
總結 div 標籤定義 html 文件中的乙個分隔區塊或者乙個區域部分。div 標籤常用於組合塊級元素,以便通過 css 來對這些元素進行格式化。margin 10px 5px 15px margin 10px 5px margin 10px 屬性值值 描述auto 瀏覽器計算外邊距。length ...
C 入門教程
c 是c語言的繼承,它既可以進行c語言的過程化程式設計,又可以進行以抽象資料型別為特點的基於物件的程式設計,還可以進行以繼承和多型為特點的物件導向的程式設計。c 擅長物件導向程式設計的同時,還可以進行基於過程的程式設計,因而c 就適應的問題規模而論,大小由之。c 不僅擁有計算機高效執行的實用性特徵,...
C 入門教程(七十五) 賦值運算子和 this
小古銀的官方 完整教程 this 鞏固練習 include std cout std endl class test int main void test test const test void test operator const test 輸出結果 呼叫複製賦值運算子上面 中過載了賦值運算子...