Ⅰ c語言真假判斷
在C語言中,0值代表假,非0值代表真。
隨著語言的發展,引入了bool類型,定義在頭文件 stdbool.h中。bool類型有兩個值,true代表真值,false代表假值。這兩者之間有等價關系,任何能轉換為0值的表達式,其結果也是false,反之也成立產。
非0即為真,在程序設計裡面會省去很多煩瑣的代碼。
比如:
malloc函數,不成功會返回NULL(實際上就是0),成功返回所分配的連續單元的首地址。那麼在判斷malloc()函數是否成功分配了內存,則可以這么寫:
int *p = (int *)malloc(sizeof(int) * 10);
if (p)
TODO...
else
TODO...
(1)邏輯真假判斷c語言擴展閱讀
1、對於邏輯與運算,如果第一個操作數被判定為「假」,系統不再判定或求解第二操作數。
2、對於邏輯或運算,如果第一個操作數被判定為「真」,系統不再判定或求解第二操作數。
Ⅱ C語言真假判斷
朋友,這是一個與和或的問題。
"||"是或的意思,而"&&"是與的意思,相信你應該知道:對於或而言,只要有一個是真,那麼這個或的結果就是真;而對於與來講,必須2個都為真,結果才是真,否則為假。
現在你需要知道,計算機語言中判斷真假的准則是:零為假,非零為真!
也就是說"9||0"中凱模的9已經為真,仿孫亮所以"9||0"這個表達式的值為1;同樣的,"8&&7"這個表達式的8和7都是真,所以結果也是1.
不知道你明白了沒?希望對你有幫助!
對的!非零備寬就是真!至於為什麼它返回值是真,結果卻每次都是1,而不是其他比如2,3,4。。其實這個也對的,只是別人寫的系統函數返回的就是1或0。。。
Ⅲ C語言中的邏輯值「真」是用什麼表示的,邏輯值「假」是用什麼表示的
C語言中的邏輯值「真」是用T表示(True,真)值,邏輯值「假」是用F(False,假)。
在編程語言中表示T(True,真)值和F(False,假)值的數據類型叫做布爾類型,在C語言中通常用int類型來表示,非0表示T,0表示F。
布爾邏輯是寫程序的基本功之一,程序中的很多錯誤都可以歸因於邏輯錯誤。以下是一些布爾代數的基本定理,為了簡潔易讀,T和F用1和0表示,||用+號表示,x、y、z的值可能是0也可能是1。
(3)邏輯真假判斷c語言擴展閱讀
運算注意事項
當表達式進行&&運算時,只要有一個為假,總的表達式就為假,只有當所有都為 真時,總的式子才為真。當表達式進行||運算時,只要有一個為真,總的值就為真,只有當所有的都為假時,總的式子才為假。
邏輯非(!)運算是把相應的變數數據轉換為相應的真/假值。若原先為假,則邏輯非以後為真,若原先為真,則邏輯非以後為假。
Ⅳ C語言中,如何表示「真」還是「假」系統如何判斷一個量的「真」和「假」
表示真假蠢襪彎可以用1,0或true,false;
判斷真假的方法是:(假定有變數a)
if(a){...}
//判斷如果為真
if(!a){
...}//判斷如果為好彎假
true和false一般用於布爾型變數的判斷,即帶悶
if(a==true){}
或
if(a==false){}
Ⅳ C語言中的邏輯值「真」是用什麼表示的,邏輯值「假」是用什麼表示的
C語言中的邏輯值「真」是用T表示(True,真)
值,邏輯值「假」是用
F(False,假)。
在編程語言中表示
T(True,真)
值和
F(False,假)值的數據類型叫做布爾類型,在
C
語言中通常用
int
類型來表示,非
0
表示
T,0
表示
F。
布爾邏輯是寫程序的基本功之一,程序中的很多錯誤都可以歸因於邏輯錯誤。以下是一些布爾代數的基本定理,為了簡潔易讀,T
和
F
用
1
和
0
表示,||
用
+
號表示,x、y、z
的值可能是
0
也可能是
1
。
(5)邏輯真假判斷c語言擴展閱讀
常用的邏輯運算符還有
「||」表示「或者」,對於表達式
a||b,「a
或者
b
成立」就為真,也就是說
a
和
b
只要有任意一個成立,a||b
就為真。
比如,a=5,表達式
a>0
||
a<-1
的結果為真,因為
5>0,即使
5<-1
不成立,整個表達式也為真。還有「!」表示「反」,對於表達式
!a,a
為真時,!a
為假;a為假時,!a
為真。
Ⅵ C語言中的邏輯值「真」是用什麼表示的,邏輯值「假」是用什麼表示的
邏輯值只有兩個值,即true(真)和false(假),在C語言中true用1表示,false用0表示。
需要注意的是,在C語言中並沒有邏輯數據類型,在需要保存邏輯值時,可以用整型類型保存。例如:
int x=10,y=20;
int c = (x>y);//x>y此表達式為假,則整個表達式的值為0,即c變數的值為0;
printf(「c=%d 」,c);//結果:c=0
(6)邏輯真假判斷c語言擴展閱讀:
運算注意事項
當表達式進行&&運算時,只要有一個為假,總的表達式就為假,只有當所有都為 真時,總的式子才為真。當表達式進行||運算時,只要有一個為真,總的值就為真,只有當所有的都為假時,總的式子才為假。
邏輯非(!)運算是把相應的變數 數據轉換為相應的真/假值。若原先為假,則邏輯非以後為真,若原先為真,則邏輯非以後為假。
Ⅶ C語言中邏輯值真假怎麼表示
有以下方式:
1、自己定義的「仿布爾型」
在C99標准被支持之前,一般是由開發人員自己模仿定義布爾型,方式有很多種,常見的有下面兩種:
/*第一種方法*/
#defineTRUE1
#defineFALSE0
/*第二種方法*/
enumbool{false,true};
2、使用_Bool
從C99標准開始,可以簡單的使用 _Bool 來定義布爾型變數。_Bool類型長度為1,只能取值范圍為0或1。將任意非零值賦值給_Bool類型,都會先轉換為1,表示真。將零值賦值給_Bool類型,結果為0,表示假。 下面是一個例子程序:
#include<stdio.h>
#include<stdlib.h>
intmain(){
_Boola=1;
_Boolb=2;/*使用非零值,b的值為1*/
_Boolc=0;
_Boold=-1;/*使用非零值,d的值為1*/
printf("a==%d,/n",a);
printf("b==%d,/n",b);
printf("c==%d,/n",c);
printf("d==%d,/n",d);
printf("sizeof(_Bool)==%d/n",sizeof(_Bool));
system("pause");
returnEXIT_SUCCESS;
}
3. 使用stdbool.h
在C++中,通過bool來定義布爾變數,通過true和false對布爾變數進行賦值。C99為了讓我們能夠寫出與C++兼容的代碼,添加了一個頭文件<stdbool.h>。在gcc中,這個頭文件的源碼如下:(注,為了清楚,不重要的注釋部分已經省略):
/*Copyright(C)1998,1999,2000FreeSoftwareFoundation,Inc.
ThisfileispartofGCC.
*/
#ifndef_STDBOOL_H
#define_STDBOOL_H
#ifndef__cplusplus
#definebool_Bool
#definetrue1
#definefalse0
#else/*__cplusplus,應用於C++里,這里不用處理它*/
/*Supporting<stdbool.h>inC++isaGCCextension.*/
#define_Boolbool
#defineboolbool
#definefalsefalse
#definetruetrue
#endif/*__cplusplus*/
/*.*/
#define__bool_true_false_are_defined1
#endif/*stdbool.h*/
可見,stdbool.h中定義了4個宏,bool、true、false、__bool_true_false_are_defined。 其中bool就是 _Bool類型,true和false的值為1和0,__bool_true_false_are_defined的值為1。下面是一個例子程序:
#include<stdio.h>
#include<stdlib.h>
#include<stdbool.h>
/*測試C99新添加的頭文件stdbool.h*/
intmain(){
boolm=true;
booln=false;
printf("m==%d,n==%d/n",m,n);
printf("sizeof(_Bool)==%d/n",sizeof(_Bool));
system("pause");
returnEXIT_SUCCESS;
}