c語言中在字串的結尾加0還是0有區別嗎

2021-03-03 20:50:51 字數 1464 閱讀 8955

1樓:匿名使用者

有區別,在c中'\0'為轉義字元,為字串結束標誌。在我們輸入字串時,其實當輸入結束時,編譯器會自動加上'\0'。

2樓:匿名使用者

加'\0',是有區別,其中的'\0'為轉義字元,其ascii值為0,

而數字 0(字元型) 的ascii值為0+48=48 ,可以用printf("%d %d %d",'\0','0',0);

語句來檢視

3樓:匿名使用者

兩者bai是相同du的。

例:zhichar *str="abcd";

memset(str+3, 0, 1) ==> str="abc"

memset(str+3,'\0',1) ==> str="abc" 此二

者等價dao

但memset(str+3,'0',1) ==> str="abc0"

從另一專

個角度屬

(int)(0) = 0

(int)('\0') = 0

(int)('0') = 48

4樓:匿名使用者

一樣的,都是字串結束符。

5樓:匿名使用者

有,加'\0'後字元無消

c語言中字串,為什麼最後要加個『\0' ?

6樓:匿名使用者

'\0'一般放在字串的結束處,表示字串的結束,其是ascii值為0的字元的轉義。

在標頭檔案#include 中包含的一些字串處理函式等中,一般處理字串時,都是一'\0'作為字串的結束,如果一個字串中沒有'\0'這個結束字元,那麼這些函式將不能確定字串的結束位置在哪兒,從而引起一些不必要的錯誤。

7樓:匿名使用者

\0'在c語言中代表著字串的結束

在你不輸入'\0'的時候 字串不知道已經讀完了 還有繼續向後讀 讀一個位元組長度是?兩個位元組長度

就是燙 這是ascii值決定的 漢子是兩個位元組就不多說了 '\0'的ascii值為(0x)00有時候如果未定義可能會出現一堆燙知道出現預設的00(也就是'\0')才會停止。

8樓:匿名使用者

因為c語言中沒有字串這種資料型別,只有char字元型別,在c語言中所謂的字串其實是char陣列,陣列最後一個元素加上「\0",表示字串結束,這是一種字串的表達方式。

9樓:匿名使用者

表示字串結束,在輸出的時候輸出到這裡為止,你可以試一下在字串中間加入\0 再輸出,就只會輸出\0前面的內容。

10樓:匿名使用者

那個設計c語言編譯器的人強制規範這樣的

11樓:匿名使用者

字串結束符。 表示字串結束。 跟'\n'表示換行,差不多。

c語言中怎麼樣定義字串變數c語言中怎麼樣定義一個字串變數

c語言沒有字串型別,所以沒辦法進行定義字串變數。但是可以用字元陣列來處理字串。這定義了一個字元陣列,名為a 例 char a hello 也可以用來定義一個指標變數 定義了一個指標變數,名為p 例 char p hello 接觸c語言幾天。查了一些資料是這樣理解的,有不對的地方一起學習啦。一維的情況...

c語言中清空字串的庫函式,C語言中清空字串的庫函式

字串函式 在標頭檔案中定義了兩組字串函式。第一組函式的名字以str開頭 第二組函式的名字以mem開頭。只有函式memmove對重疊物件間的拷貝進行了定義,而其他函式都未定義。比較類函式將其變數視為unsigned char型別的陣列。1.strcpy include char strcpy char...

c語言中字元常量與字串常量有什麼區別

字元常量 在c語言中一個字元常量代表ascii字符集中的一個字元,在程式中用單引號把一個字元括起來作為字元常量。大小寫字母代表不同的字常量 單引號中的空格也是 字元常量只能包含一個字元 字元常量只能用但括號括起來。下面是常用字元的sacii a z 97 122 a z 65 90 0 9 48 5...