新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
C語言之布爾類型的使用方法
C語言沒有布爾變量,邏輯事件用真與假來敘述,數(shù)據(jù)化為數(shù)字0與1,表達(dá)式操作的結(jié)果非0即為1

成都創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)公司、成都網(wǎng)站制作、網(wǎng)站營銷推廣、網(wǎng)站開發(fā)設(shè)計(jì),對服務(wù)玻璃鋼坐凳等多個行業(yè)擁有豐富的網(wǎng)站建設(shè)及推廣經(jīng)驗(yàn)。成都創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司成立于2013年,提供專業(yè)網(wǎng)站制作報(bào)價服務(wù),我們深知市場的競爭激烈,認(rèn)真對待每位客戶,為客戶提供賞心悅目的作品。 與客戶共同發(fā)展進(jìn)步,是我們永遠(yuǎn)的責(zé)任!
C 語言標(biāo)準(zhǔn)(C89) 沒有定義布爾類型,如果你使用 true 和 false,會出現(xiàn)以下錯誤:
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
//定義一個布爾變量
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時結(jié)束循環(huán)
if( num == 1)
{
flag = true;
}
}
printf ("%d的疊乘值為 %d \n", n, sum);
return 0;
}
輸出結(jié)果為:
10的疊乘值為 3628800
C99 還提供了一個頭文件 定義了 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時結(jié)束循環(huán)
if( num == 1)
{
flag = true;
}
}
printf ("%d的疊乘值為 %d \n", n, sum);
return 0;
}
輸出結(jié)果為:
10的疊乘值為 3628800
當(dāng)前標(biāo)題:C語言之布爾類型的使用方法
文章網(wǎng)址:http://m.fisionsoft.com.cn/article/djppcej.html


咨詢
建站咨詢
