在右側我們給出了乙個已經基本完成的程式,讀入了乙個字串,呼叫了乙個叫 str_len 的函式來計算這個字串的長度,並輸出。
聰明的你應該已經發現了,這個叫 str_len 的函式並沒有完成,在不修改函式原型的情況下,請完成 str_len 函式,實現我們上述的功能吧。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include
#include
int
str_len(
char
*str);
int
main()
int
str_len(
char
*str)
1
abcdefg
1
7
int n = 0;
while (*str != 0)
return n;
當指標*str指向\0時表示字串結束
字串長度
當字元全是英文本元的時候,兩者是一樣。這裡主要比較一下,中英文混排的時候,兩個計算結果。測試時編碼方式是utf8 複製 如下 str 中文a字1符 echo strlen str echo echo mb strlen str,utf8 輸出結果 14 6 結果分析 在strlen計算時,對待乙個u...
字串長度
在c c 中,字串是以零 0 結尾的。比如,對於下面的字串 hello word 在最後乙個字元 d 後面,還有乙個我們肉眼看不見的 0 字元,作為該字串的結束符。所以,hello word 其在記憶體中的儲存形式為 最後有乙個我們看不見的 0 明白了字串的結尾方式,那麼如何計算字串的長度呢?比如 ...
字串長度
碰到第乙個字串結束符 0 時返回計數器值,即 是指實際字串或字元陣列的實際長度 不是所佔空間的位元組數 includeusing namespace std int main char a 32 cin a cin會在寫入結束後加入乙個 0字元 如果輸入了32個字元則會越界 cout strlen ...