C語言怎樣判斷一個變量是否為空?在/c,中任何變量定義后都有自己的內(nèi)存空間,內(nèi)存空間中一定有值,所以不存在絕對意義上的null值。一般來說,判斷空值就是判斷確定后是否已經(jīng)賦值,所以只需要判斷變量值是否還是初始值。
區(qū)分變量類型,有一些常見的初始化情況:
1.指針類型。
指針類型一般初始化為NULL,這是stdlib.h中定義的宏,其值為(void*)0。因此,判斷指針P為空值的一般方法如下
p==NULL
如果相等,則為空。
2.整數(shù)序列。
包括int、short、char、long以及相應(yīng)的無符號類型。
整數(shù)沒有通用的初始化方法,一般初始化為0或非法值。即在程序運行期間不發(fā)生的賦值,如負(fù)值或最大值。
當(dāng)定義類型var=INIT_VALUE時
可以用var==INIT_VALUE來判斷是否為空(賦值)。需要注意的是,如果INIT_VALUE選擇不當(dāng),可能導(dǎo)致運算時初始值被賦值(未初始化),那么這個判斷就無效。
3.字符串/字符指針:
通常,它被初始化為全零。可以通過判斷長度或者第一個字符的值來判斷是否為空。比如字符串chars[N]:
Strl
C中怎么判斷字符串為空?
空字符串長度為0,也就是說,第一個字符是0,所以可以用下面幾行代碼來判斷:charstr1[]=
c語言空值怎么表示?語沒有空值的概念。一般來說,如果指針指向地址0,就是空值,其他數(shù)據(jù)如果其內(nèi)容為0,就是空值。memset函數(shù)可以用來填充一個大的內(nèi)存區(qū)域,它的填充長度以字節(jié)為單位。
塑料:inta=0
字符類型:chara=0
數(shù)組:
inta[20]
memset(a,0,sizeof(int)*20)
c字符串只需要將第一個字符設(shè)置為0。
當(dāng)然也可以全部清零。
chara[20]=
c怎么判斷單個字節(jié)是否為空?
如果輸入一個空格,嚴(yán)格來說,字符串不應(yīng)該是空的,而且空格也有對應(yīng)的ASCII碼值,32!char的存儲范圍是0~255(ASCII),所有字符都可以存儲在char數(shù)據(jù)中。因此,在輸入一個空格后,該字符串不為空。這個字符串實際上是#340#34,空字符串相當(dāng)于#340#34。看出區(qū)別。真的嗎?空格也是字符!這個一定要搞清楚!