1、字串描述
字串實際上是使用 null 字元 『\0』 終止的一維字元陣列。因此,乙個以 null 結尾的字串,包含了組成字串的字元。
下面的宣告和初始化建立了乙個 「hello」 字串。由於在陣列的末尾儲存了空字元,所以字元陣列的大小比單詞 「hello」 的字元數多乙個。
依據陣列初始化規則,您可以把上面的語句寫成以下語句:char greeting[6]
=;
如果沒有在字元陣列最後增加 \0 的話輸出結果有誤:char greeting=
"hello"
;
輸出結果:// 初始化字串
char greeting[5]
=;printf
("greeting message: %s\n"
, greeting)
;
greeting message: hello燙燙燙?侵7(?╔?╚╔╔
在使用不定長陣列初始化字串時預設結尾為 \0
輸出結果:char greeting=
"hello"
;printf
("greeting message: %s, greeting length: %d\n"
, greeting,
sizeof
(greeting)
);
2、c 中有大量操作字串的函式序號greeting message: hello, greeting[
] length: 6
函式目的
1strcpy(s1, s2);
複製字串 s2 到字串 s1。
2strcat(s1, s2);
連線字串 s2 到字串 s1 的末尾。
3strlen(s1);
返回字串 s1 的長度。
4strcmp(s1, s2);
s1 和 s2 是相同的,則返回 0; s1s2 則返回大於 0。
5strchr(s1, ch);
返回乙個指標,指向字串 s1 中字元 ch 的第一次出現的位置。
6strstr(s1, s2);
返回乙個指標,指向字串 s1 中字串 s2 的第一次出現的位置。
例子
結果#include
#include
int main (
)
strcpy( str3, str1)
: hello
strcat( str1, str2): helloworld
strlen(str1)
: 10
C語言基礎(六)字串及其操作
2016.7.28 字串 由字元陣列組成並且以 0 作為結束符。用雙引號包圍起來。字串 字元陣列構成 最後元素 0 一般形式 hello world 字串和字元陣列主要區別 0 字元陣列沒有 0 字串有 int main int argc,const char argv 字串初始化 char arr...
C語言 3 字串
字元陣列 char 看做乙個特殊的字元陣列,在字串結束為止新增 0 結束符 ascii碼0 沒有 0結尾的是普通的字元陣列。使用雙引號定義的字串自動在尾部加上 0 puts s 函式 輸出記憶體直至遇到 0 陣列變數名代表了陣列位址,例如char s 20 s就是陣列位址,不用 s gets s 函...
03 字串 基礎
1.string s new string abc 此時記憶體有兩個物件 stringpool裡 abc 堆空間 new string abc string s1 abc 因stringpool裡已經有 abc 物件,所以不會再產生,此時記憶體有兩個物件 string s2 new string a...