新聞中心
C語言沒有布爾變量,邏輯事件用真與假來敘述,數(shù)據(jù)化為數(shù)字0與1,表達(dá)式操作的結(jié)果非0即為1

成都創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)公司、成都網(wǎng)站制作、網(wǎng)站營(yíng)銷推廣、網(wǎng)站開發(fā)設(shè)計(jì),對(duì)服務(wù)玻璃鋼坐凳等多個(gè)行業(yè)擁有豐富的網(wǎng)站建設(shè)及推廣經(jīng)驗(yàn)。成都創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司成立于2013年,提供專業(yè)網(wǎng)站制作報(bào)價(jià)服務(wù),我們深知市場(chǎng)的競(jìng)爭(zhēng)激烈,認(rèn)真對(duì)待每位客戶,為客戶提供賞心悅目的作品。 與客戶共同發(fā)展進(jìn)步,是我們永遠(yuǎn)的責(zé)任!
C 語言標(biāo)準(zhǔn)(C89) 沒有定義布爾類型,如果你使用 true 和 false,會(huì)出現(xiàn)以下錯(cuò)誤:
infinite.c:5:12: error: use of undeclared identifier 'true'
while (true) {
1 error generated.
make: *** [infinite] Error 1
我們可以借助 C 語言的宏定義來哦設(shè)置:
//宏定義布爾類型
#define BOOL int
#define TRUE 1
#define FALSE 0
//定義一個(gè)布爾變量
BOOL flag = FALSE;
也可以通過枚舉類來定義:
typedef enum
{
true=1, false=0
}bool;
實(shí)例
#include
//計(jì)算n!,n的值在main中定義
int main(void)
{
int n = 10; //計(jì)算疊乘數(shù)
int sum = 1; //用來存放疊乘的結(jié)果
typedef enum
{
true=1, false=0
}bool;
bool flag = false; //疊乘標(biāo)記
int num = n; //循環(huán)次數(shù)
while( !flag )
{
sum = sum * (num--);
//當(dāng)num=1時(shí)結(jié)束循環(huán)
if( num == 1)
{
flag = true;
}
}
printf ("%d的疊乘值為 %d \n", n, sum);
return 0;
}
輸出結(jié)果為:
10的疊乘值為 3628800
C99 還提供了一個(gè)頭文件 定義了 bool 代表 _Bool,true 代表 1,false 代表 0。只要導(dǎo)入 stdbool.h ,就能非常方便的操作布爾類型了。
實(shí)例
//導(dǎo)入 stdbool.h 來使用布爾類型
#include
#include
//計(jì)算n!,n的值在main中定義
int main(void)
{
int n = 10; //計(jì)算疊乘數(shù)
int sum = 1; //用來存放疊乘的結(jié)果
bool flag = false; //疊乘標(biāo)記
int num = n; //循環(huán)次數(shù)
while( !flag )
{
sum = sum * (num--);
//當(dāng)num=1時(shí)結(jié)束循環(huán)
if( num == 1)
{
flag = true;
}
}
printf ("%d的疊乘值為 %d \n", n, sum);
return 0;
}
輸出結(jié)果為:
10的疊乘值為 3628800
文章標(biāo)題:C語言之布爾類型的使用方法
網(wǎng)站鏈接:http://www.dlmjj.cn/article/djppcej.html


咨詢
建站咨詢
