bool就是布爾的意思,布爾值的返回值只有真(true)和假(false),多用于判斷。

創(chuàng)新互聯(lián)公司長(zhǎng)期為上千余家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為庫(kù)爾勒企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作,庫(kù)爾勒網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
在C語(yǔ)言中,關(guān)系運(yùn)算和邏輯運(yùn)算的結(jié)果有兩種,真和假:0表示假,非0表示真。例如:
#include stdio.h
intmain(){
inta,b,flag;
scanf("%d %d", a, b);
flag = a b; //flag保存關(guān)系運(yùn)算結(jié)果
printf("flag=%d\n",flag);
return0;
}
擴(kuò)展資料
運(yùn)行結(jié)果:
1020↙
flag=0
C語(yǔ)言并沒有徹底從語(yǔ)法上支持“真”和“假”,只是用0和非0來(lái)代表。這點(diǎn)在C++中得到了改善,C++新增了bool類型(布爾類型),它一般占用1個(gè)字節(jié)長(zhǎng)度。bool類型只有兩個(gè)取值,true和false:true表示“真”,false表示“假”。
C語(yǔ)言沒有BOOL類型變量
boolean類型是C++所獨(dú)有的
由于使用BOOL類型可以使代碼更具有可讀性,很多編程者都在C中自己定義了類似的應(yīng)用,一般方法有兩種:
1、采用宏定義方式(windef.h中就是用的這種方式)
typedef int BOOL ;
#define true 0
#define false 1
2、采用枚舉型變量方式(這種方式更象C++的boolean類型)
typedef enum { true=0, false} BOOL;
在C語(yǔ)言中,沒有bool這種類型,但是在C++中,把bool當(dāng)做一種基本的數(shù)據(jù)類型。
在C語(yǔ)言中,當(dāng)我們要表示真或假的時(shí)候,都是定義一個(gè)非bool類型來(lái)使用的。
在C++中,加入了布爾bool這種基礎(chǔ)的類型,用true和false來(lái)表示真或者假,也可以用非0值來(lái)表示真,用0來(lái)表示假。在C++中,雖然布爾類型只表示true和false,看起來(lái)好像可以用一個(gè)位來(lái)存儲(chǔ)布爾類型的變量,但其實(shí),布爾類型在C++中是占用一個(gè)字節(jié)的。
bool型變量返回值:
當(dāng)作為一個(gè)構(gòu)造函數(shù)(帶有運(yùn)算符 new)調(diào)用時(shí),Boolean() 將把它的參數(shù)轉(zhuǎn)換成一個(gè)布爾值,并且返回一個(gè)包含該值的 Boolean 對(duì)象。
如果作為一個(gè)函數(shù)(不帶有運(yùn)算符 new)調(diào)用時(shí),Boolean() 只將把它的參數(shù)轉(zhuǎn)換成一個(gè)原始的布爾值,并且返回這個(gè)值。
bool表示布爾型變量,也就是邏輯型變量的定義符,以英國(guó)數(shù)學(xué)家、布爾代數(shù)的奠基人喬治·布爾(George Boole)命名。
bool類似于float,double等,只不過float定義浮點(diǎn)型,double定義雙精度浮點(diǎn)型。 在objective-c中提供了相似的類型BOOL,它具有YES值和NO值;在java中則對(duì)應(yīng)于boolean類型。
C99中提供了一個(gè)頭文件 stdbool.h 定義了bool代表_Bool,true代表1,false代表0。只要導(dǎo)入 stdbool.h ,就能非常方便的操作布爾類型了。
擴(kuò)展資料:
BOOL和bool區(qū)別:
1、類型不同
bool為布爾型用作邏輯判斷
BOOL在windef.htypedef int BOOL;
在wtypes.htypedef long BOOL;
2、長(zhǎng)度不同
bool只有一個(gè)字節(jié)
BOOL長(zhǎng)度視實(shí)際環(huán)境來(lái)定,一般可認(rèn)為是4個(gè)字節(jié)
3、取值不同
bool取值false和true,0為false,非0為true。(例如-1和2都是true)。
如果數(shù)個(gè)bool對(duì)象列在一起,可能會(huì)各占一個(gè)Byte,這取決于編譯器。
BOOL是微軟定義的typedef int BOOL(在windef.h中),0為FALSE,1為TRUE。(-1和2既不是TRUE也不是FALSE)。
#ifndef FALSE
#define FALSE 0
#endif
#ifndef TRUE
#define TRUE 1
#endif
布爾型變量bool
布爾型變量的值只有 真 (true) 和假 (false)。
布爾型變量可用于邏輯表達(dá)式,也就是“或”“與”“非”之類的邏輯運(yùn)算和大于小于之類的關(guān)系運(yùn)算,邏輯表達(dá)式運(yùn)算結(jié)果為真或?yàn)榧佟?/p>
bool可用于定義函數(shù)類型為布爾型,函數(shù)里可以有 return TRUE; return FALSE 之類的語(yǔ)句。
if (邏輯表達(dá)式)
{
如果是 true 執(zhí)行這里;
}
else
{
如果是 false 執(zhí)行這里;
};
三、關(guān)于bool的小例子
(1)
#includeiostream
using namespace std;
int main()
{
bool b =2; //執(zhí)行此行后,b=true(整型2轉(zhuǎn)為bool型后結(jié)果為true)
if(b)
cout "ok!" endl;
b = b-1; //執(zhí)行此行后,b=false(bool型數(shù)據(jù)true參與算術(shù)運(yùn)算時(shí)會(huì)轉(zhuǎn)為int值1,減1后結(jié)果為0,賦值給b時(shí)會(huì)轉(zhuǎn)換為bool值false)
if(b)
cout "error!" endl;
return 0;
}
運(yùn)行結(jié)果:OK!
(2)
#includeiostream
#includewindef.h
using namespace std;
int main()
{
BOOL b =2; //執(zhí)行此行后,b=2(BOOL為int此處不進(jìn)行類型轉(zhuǎn)換,b存放的就是2)。
if(b)
cout "ok!" endl;
b=b-1; //執(zhí)行此行后,b=1(只是簡(jiǎn)單的進(jìn)行算術(shù)運(yùn)算,結(jié)果為1,回存)
if(b) // b非0,條件為真
cout "error!" endl;
return 0;
}
運(yùn)行結(jié)果:OK!
error!
可以在定義b時(shí)改成 bool b=0;看看運(yùn)行結(jié)果。
參考資料來(lái)源:百度百科-BOOL
bool表示布爾型變量,也就是邏輯型變量的定義符,可用于邏輯表達(dá)式,也就是“或”“與”“非”之類的邏輯運(yùn)算和大于小于之類的關(guān)系運(yùn)算。bool取值false和true,0為false,非0為true。(例如-1和2都是true)。如果數(shù)個(gè)bool對(duì)象列在一起,可能會(huì)各占一個(gè)Byte,這取決于編譯器。
bool型變量返回值:
當(dāng)作為一個(gè)構(gòu)造函數(shù)(帶有運(yùn)算符 new)調(diào)用時(shí),Boolean() 將把它的參數(shù)轉(zhuǎn)換成一個(gè)布爾值,并且返回一個(gè)包含該值的 Boolean 對(duì)象。
如果作為一個(gè)函數(shù)(不帶有運(yùn)算符 new)調(diào)用時(shí),Boolean() 只將把它的參數(shù)轉(zhuǎn)換成一個(gè)原始的布爾值,并且返回這個(gè)值。
C語(yǔ)言中,本身沒有bool(布爾型變量)。
bool是布爾型變量,也就是邏輯型變量的定義符,類似于float,double等,只不過float定義浮點(diǎn)型,double定義雙精度浮點(diǎn)型。
布爾型變量的值只有?真?(true)?和假?(false)。
布爾型變量可用于邏輯表達(dá)式,也就是“或”“與”“非”之類的邏輯運(yùn)算和大于小于之類的關(guān)系運(yùn)算。
建議:最好別用bool,bool變量可用int代替。
擴(kuò)展資料
BOOL和bool的區(qū)別:
1、類型不同
BOOL為int型
bool為布爾型
2、長(zhǎng)度不同
bool只有一個(gè)字節(jié)
BOOL長(zhǎng)度視實(shí)際環(huán)境來(lái)定,一般可認(rèn)為是4個(gè)字節(jié)
3、取值不同
bool取值false和true,是0和1的區(qū)別
如果數(shù)個(gè)bool對(duì)象列在一起,可能會(huì)各占一個(gè)bit,這取決于編譯器。
BOOL是微軟定義的typedef?int?BOOL(在windef.h中)。與bool不同,它是一個(gè)三值邏輯,TRUE/FALSE/ERROR,返回值為大于0的整數(shù)時(shí)為TRUE,返回值為0時(shí)候,為FALSE,返回值為-1時(shí)為ERROR。
參考資料來(lái)源:
百度百科——BOOL
分享題目:c語(yǔ)言bool型函數(shù),c語(yǔ)言bool函數(shù)例子
本文來(lái)源:http://chinadenli.net/article13/dsishgs.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、企業(yè)網(wǎng)站制作、電子商務(wù)、域名注冊(cè)、動(dòng)態(tài)網(wǎng)站、面包屑導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)