黑馬程式設計師 C語言學習筆記之字串(十)

2021-06-21 00:21:37 字數 1480 閱讀 5523

--------------------------------------------ios期待與您交流!--------------------------------------------

字串可以看做是乙個特殊的字元陣列,並在字串的尾部新增了乙個結束標誌』\0』。
// \0的ascii碼值是0

// 都是字串

char name[5] = "it";

char name2[5] = ;

char name3[5] = ;

char name4[5] = ;

char name5[5];

name5[0] = 'i';

name5[1] = 't';

name5[2] = 0;

name5[3] = 0;

name5[4] = 0;

// 不算是乙個字串(只能說是乙個字元陣列)

char name6 = ;

printf函式在輸出字串的時候會從所給的字串位址開始輸出,直到遇到\0時結束輸出。如下:

char name[20] = "helloworld\0welcome";

printf("%s\n", name);

printf("%s\n", &name[3]);

輸出:

helloworld

loworld

分析:printf 函式在輸出字串時,接收的是字串的位址。

printf("%s\n", name); 中的name其實是name[20]陣列中的首位址,和&name[0]同一意思,所以從name[0]開始輸出,直到\0時結束。

printf("%s\n", &name[3]);也是一樣的,從name[3]的位置開始輸出,直到\0時結束。

1> 計算的字元不包括\0

2> 計算的是字元數,並不是字數。乙個漢字算作3個字元

3> 從某個位址開始數字符的個數,直到遇到\0為止

例如:

int len = strlen("hello");  

int len2 = strlen("hello我");

int len3 = strlen("hello\0world");

printf("%d\n", len);

printf("%d\n", len2);

printf("%d\n", len3);

輸出: 5

85分析:

應用1、2、3點就可以理解了

--------------------------------------------ios期待與您交流!--------------------------------------------

詳細請檢視:

黑馬程式設計師 C語言學習筆記之陣列(九)

ios期待與您交流!1 定義 格式 型別 陣列名 元素個數 裡面的個數必須是乙個固定值,可以是常量 比如6 8 常量表示式 比如3 4 5 7 絕對不能使用變數或者變數表示式來表示元素個數,大多數情況下不要省略元素個數2 初始化 一般形式是 型別 陣列名 元素個數 int a 2 其實相當於 int...

黑馬程式設計師 C語言學習筆記之列舉(十三)

ios期待與您交流!enum 列舉名 c中的列舉非常簡單,它的本質是整型資料,列舉的每個成員都是int型的。enum printf 列舉所佔位元組數 lu n sizeof enum 輸出 列舉所佔位元組數 4 enum 列舉名 變數名 列舉中的成員是從0開始計數的 enum enum man ma...

黑馬程式設計師 C語言學習筆記之指標基礎

ios培訓 android培訓 期待與您交流!1.指標的概念 指標是乙個特殊的變數,它裡面儲存的數值被解釋成為記憶體裡的乙個位址。2 指標的型別。先列出一些指標的型別,簡單的認識一下 1 int ptr 指標的型別是int 2 char ptr 指標的型別是char 3 int ptr 指標的型別是...