正在閱讀:新手入門:C++中布爾類型新手入門:C++中布爾類型

2005-02-26 15:47 出處:PConline 作者:管寧 責(zé)任編輯:xietaoming

  布爾類型對象可以被賦予文字值true或者false,所對應(yīng)的關(guān)系就是真與假的概念。

  我們通常使用的方法是利用他來判斷條件的真與假,例如下面的代碼:

#include <iostream
using namespace std; 
 
void main(void

    bool found = true
    if (found) 
    { 
        cout << "found條件為真!" << endl; 
    } 
 
}

  但是一些概念不清的人卻不知道布爾類型的對象也可以被看做是一種整數(shù)類型的對象,但是他不能被聲明成signed,unsigned,short long,如果你生成(short bool found=false;),那么將會(huì)導(dǎo)致編譯錯(cuò)誤。

  其為整數(shù)類型的概念是這樣的:

  當(dāng)表達(dá)式需要一個(gè)算術(shù)值的時(shí)候,布爾類型對象將被隱式的轉(zhuǎn)換成int類型也就是整形對象, false就是0,true就是1,請看下面的代碼!

#include <iostream
#include <string
using namespace std; 
 
void main(void

bool found = true
int a = 1; 
cout << a + found << endl; 
cin.get(); 
}

  a+found 這樣的表達(dá)式樣是成立的,輸出后的值為2進(jìn)行了加法運(yùn)算!

  那么說到這里很多人會(huì)問指針也可以嗎?回答是肯定的這樣一個(gè)概念對于指針同樣也是有效的,下面我們來看一個(gè)將整形指針對象當(dāng)作布爾對象進(jìn)行使用的例子:

#include <iostream
using namespace std; 
 
void main(void

    int a = 1; 
    int *pi; 
    pi=&a; 
 
    if (*pi) 
    { 
        cout << "*pi為真" << endl; 
    } 
    cin.get(); 
}

  上面代碼中的*pi進(jìn)行了隱式樣的布爾類型轉(zhuǎn)換表示為了真也就是true。

302 Found

302 Found


Powered by Tengine
tengine