1、型別不同
bool 為布林型2、長度不同bool 為int型
bool 只有乙個位元組3、取值不同bool 長度視實際環境來定,一般可認為是int型別的大小4個位元組
bool 取值false和true,是0和1的區別bool 取值false和true,是0和非0的區別
4、bool是標準c/c++資料型別,可取值true和false。單獨佔乙個位元組,如果數個bool物件列在一起,可能會各佔乙個bit,這取決於編譯器。
bool是微軟定義的,用途是解決程式在c與c++中環境的差異,以下是false/true在windef.h的定義:
#ifndef false
#define false 0
#endif
#ifndef true
#define true 1
#endif
bool與bool不同,它是乙個三值邏輯,true/false/error,返回值為》0的整數為true,0為false,-1為error。win32 api中很多返回值為bool的函式都是三值邏輯。比如getmessage。
所以兩者不一樣的,只不過我們在使用中沒有這種感覺,因為c++會幫你做隱式轉換。
5、例子
bool x=3; //警告
warning c4305: 'initializing' : truncation from 'const int' to 'bool'
bool x=1; //正確
bool x=3; //正確
bool x=3.3; //警告
warning c4244: 'initializing' : conversion from 'const double' to 'int', possible loss of data
BOOL與bool的區別
1 型別不同 bool為int型 bool為布林型 2 長度不同 bool只有乙個位元組 bool長度視實際環境來定,一般可認為是4個位元組 3 取值不同 bool取值false和true,是0和1的區別 bool取值false和true,是0和非0的區別 bool 只是乙個巨集,不是基本的資料型別...
BOOL與bool的區別
1 型別不同 bool為int型 bool為布林型 2 長度不同 bool只有乙個位元組 bool長度視實際環境來定,一般可認為是4個位元組 3 取值不同 bool取值false和true,是0和1的區別 bool取值false和true,是0和非0的區別 bool是標準c 資料型別,可取值true...
C 中BOOL 與bool的區別
bool 定義 typedef int bool define false 0 define true 1 不能完全過載,如 file.h void f int ok void f bool ok file.cpp void f int ok void f bool 錯誤,重新宣告 而bool fa...