C語言 0 的書寫錯誤以及在字串中的簡單作用

2021-08-29 08:03:42 字數 362 閱讀 4986

在用遞迴寫strlen函式時,感覺道理很簡單(判斷一下字串最後乙個字元'\0')這個程式就出了

但是在我的程式中卻出了錯,我除錯不出來錯誤,程式很短,肉眼看了好多遍,最後更是在網上找到**,一步一步找.

這就是我的**:(錯誤**)

#include #include int strlen( char* str) 

return 1 + strlen(str+1);

} int main()

很無奈的最後發現我把 '\0'寫成了'/0'.

'\0'是字串中的最後乙個隱藏字元,『它在字串中標誌著結尾,系統讀這個字串就會一直往後讀,讀到'\0'位置 .

C在字串後面加 0和0

使用複製字串時,經常會遇到字串後面跟著一大堆莫名其妙的字串,例如屯屯屯 之類的東西,這是因為在使用字串時沒有在字串結尾加 0或0。通常分配一塊記憶體到堆上或棧上時,記憶體區域可能會有之前使用的其他殘留字元資料,這時候需要我們手動清理一下,使用memset函式即可達到我們的要求,通常會把整個新分配的字...

在C語言中的字串

1.如果在定義字元陣列時不進行初始化,則陣列中各元素的值是不可預料的。2.如果花括號中提供的初值個數 即字元個數 大於陣列長度,則按語法錯誤處理。3.如果初值個數小於陣列長度,則只將這些字元賦給陣列中前面那些元素,其餘的元素自動定位 空字元 即 0 char c 10 這個字元陣列一共有9個字元,但...

C語言錯誤之字串的輸出

define crt secure no warnings include struct person int main printf s,d,c person.name 20 person.num,person.return0 看似正確,但輸不出結果,原因是在此處犯了乙個非常簡單的錯誤。如何查錯 ...