用c語言怎麼判斷字串是否為空用C語言怎麼判斷乙個字串是否為空?

2021-03-10 01:48:55 字數 1921 閱讀 3091

1樓:匿名使用者

空格和字串為空的概念本來就不一樣,

如樓上所說空格本來就代表一

專個字元屬,

而空字串直接為"\0"

如果你要把空格的字串也定義為空字串的話就要加判斷

空格的ascii碼為32

你只需要再多加乙個遍歷判斷就ok

int isempty = 0;

int length = strlen(變數);

int n;

//遍歷整個字串,如果全為空格,則返回字串也為空for(n=0;n

printf("字串為空");

else if(isempty)

printf("字串為空");

else

printf("字串不為空");

2樓:迷惘

空格和字元來串為空的概念本源來就不一樣,

如樓上所說bai空格本來就代du表乙個字元zhi,而空字串直接為"\0"

如果你要把dao空格的字串也定義為空字串的話就要加判斷

空格的ascii碼為32

你只需要再多加乙個遍歷判斷就ok

int isempty = 0;

int length = strlen(變數);

int n;

//遍歷整個字串,如果全為空格,則返回字串也為空for(n=0;n

printf("字串為空");

else if(isempty)

printf("字串為空");

else

printf("字串不為空");

3樓:滄海雄風

空格也算字元的 所以算長度沒毛病

4樓:

空字元來

串的長度為0,那就是自說第乙個字元是bai'\0',所以可以用下du面的**zhi行判斷:

char str1="",str2="abc";

printf(str1[0]=='\0' ? "str1是空字串\n" : "str1是非空dao字串\n");

printf(str2[0]=='\0' ? "str2是空字串\n" : "str2是非空字串\n");

5樓:匿名使用者

空格不算是空字bai符串,str=""這樣的du才算zhi是空字串,裡面什麼都沒dao有,而str=" "是有內內容了,這個str儲存了容乙個字元(空格),如果你要把空格也算是空字串,那麼要稍作修改:

char str = " ";

int len = strlen(str), i = 0;

if (len > 0)

6樓:

如果復你輸入了空格,字串嚴格制

來說就應該不為空了,空格也是有對應的ascii碼值的,32!char的儲存範圍是0~255(ascii)間的字元都可以存在char型資料中。因此你輸入乙個空格後這個字串就不為空了,這個字串實際是" \0",乙個空字串相當於"\0",看到區別了嗎?

空格也是乙個字元啊!這點必須要明確!

7樓:匿名使用者

空格也是乙個字元,不會判斷不出來的

這個方法就挺好

8樓:匿名使用者

取長度吧,長度=0,就是空的

9樓:匿名使用者

#include

#include

int main(void)

如何判斷乙個字串為空

10樓:瑛夫科技

字串為空只有一種肯可能:str==null,此時string 沒有分配記憶體,所以為空.

c語言填空判斷輸入的字串是否是「回文」。若是回文,函式返回1否則函式返回

1 s n 1 2 p 3 return 0 4 gets a 或scanf s a c語言編寫函式,判斷乙個字串是否是回文。若是回文函式返回值為1,否則返回 先看bai是幾位數。du假設是zhi4位 inta,a1,a2,a3 輸入回文dao數 scanf d a a1 a 10 a2 a 10 ...

javascript怎麼判斷字串是否相等

囚我心虐我身 一般使用雙等來判斷 如果還需要型別相同那麼就用三等 說一下這兩個的區別 equality 等同,identity 恆等。兩邊值型別不同的時候,要先進行型別轉換,再比較。不做型別轉換,型別不同的一定不等。下面分別說明 先說 這個比較簡單。下面的規則用來判斷兩個值是否 相等 1 如果型別不...

c語言怎麼判斷字串裡面有亂碼 除了漢字,字母,數字 其他的都是亂碼

亂碼不太好判斷,因為是以眼睛看到為判斷標準的 你不認識的串是亂碼,那程式就不好判斷了,因為 亂碼也是合法的字元,你不認識而已。現在的字符集常見有兩種 gbk與unicode,都是超大字符集,亂碼的字元往往也是合法字元,gbk最難判斷,而unicode有非法碼區,我一人之見,供參考。漢字gbk編碼 採...