c 之重溫bool以及if和switch

2021-10-02 20:08:42 字數 1014 閱讀 6367

精華講解:

bool型別占用乙個位元組,正常cout列印為0和1;如何列印成true和false呢?

通過std::boolalpha可將流的輸出控制為bool

例子:

int main()

; flag = 3 > 2 ? 10 : 0;

std::cout << "flag=" << flag << std::endl;

std::cout << std::boolalpha; //***********

std::cout << "flag=" << flag << std::endl;

}

結果:

這裡不妨列一段**(用於講解知識點的,沒有啥實際用途)

int a;

int b;

if (a > b)

else

這裡我們看到明明temp只是在if內部臨時用一下,卻還要定義兩個變數。浪費可恥

再看下一段**

int a;

int b;

int temp = 3;

if (a > b)

else

雖然這樣解決了定義兩次的問題,但是這樣明顯增長了temp變數的生命週期,也是浪費。

所以c++17(vs2019才能用)關於if有了新的規定,用於解決上述的問題(看似很小的問題,嘿嘿)

int a;

int b;

if (int temp;a > b)

else

switch和上面if篇也是類似,這裡給出**示範:

//僅用於示範新的c++17規範,沒有實際用途!!

int a;

switch (int temp; a)

c 中BOOL和bool的區別

1 型別不同 bool為int型 bool為布林型 2 長度不同 bool只有乙個位元組 bool長度視實際環境來定,一般可認為是4個位元組 3 取值不同 bool取值false和true,是0和1的區別 bool取值false和true,是0和非0的區別二 bool是標準c 資料型別,可取值tru...

c 中BOOL和bool的區別

一 在網上找到了bool和bool的區別 1 型別不同 bool為int型 bool為布林型 2 長度不同 bool只有乙個位元組 bool長度視實際環境來定,一般可認為是4個位元組 3 取值不同 bool取值false和true,是0和1的區別 bool取值false和true,是0和非0的區別 ...

c 之重溫字元以及格式化輸出流

型別 記憶體 位元組 說明char 1ascii字元 wchar t 2寬位元組字元 char16 t 2utf 16字元 char32 t 4utf 32字元 使用說明 1 char 正常使用不說了!這裡說一下 ascll為10的時換行 舉例 int main 2 wchar t 目的字元 1 英...