1.確定字串的長度
for
(unsigned
int i =
0;i < strcount;
++i)
2.複製字串
strcpy_s函式可以把乙個字串變數賦予給另乙個字串。它的第乙個引數指定為複製目標,第二個引數是乙個整數,指定第乙個引數的大小,第三個引數是源字串。指定目標字串的長度,可以使函式避免覆蓋目標字串中最後乙個字元後面的記憶體。
注意:標準的複製函式使strcpy,它會把第二個函式指定的字串複製到第乙個引數指定的位置上,不檢查目標字串的容量。
char souce=
"hello"
;char str[10]
;if(strcpy_s
(destination,
sizeof
(destination)
,sorce)
)printf
("error!"
);
3.連線字串#define __stdc_want_lit_ext1__1
#include
#include
intmain()
;unsigned
int strcount =
sizeof
(str)
/sizeof
(str[0]
);//計算字串的大小
unsigned
int length =0;
for(
unsigned i =
0; i < strcount; i++
) length +
=strnlen
(str[i]
,sizeof
(str[i]))
;char joke[length +
strnlen
(preamble,
sizeof
(preamble))+
1];//+1給/0留下了空間if(
strncpy_s
(joke,
sizeof
(joke)
,preamble,
sizeof
(preamble)))
for(
unsigned
int i =
0; i < strcount ;
++i)
}printf
("%s"
,joke)
;getchar()
;getchar()
;return0;
}
4.比較字串
strcmp(str1,str2)比較兩個字串,返回乙個小於0,等於或大於0的int值,分別對應str1小於,等於和大於str2.
5.搜尋字串
strchr()在字串中搜尋給定的字元,它的第乙個引數是要搜尋的字串(char陣列的位址),第二個引數是要查詢的字元。
strstr()在字串中查詢子字串。第乙個引數是要搜尋的字串,第二個引數是要查詢的子字串。
#include
#include
intmain
(void
)
6.單元化字串
strtok()的函式,來單元化字串。它需要兩個引數:要單元化的字串,和包含所有可能的界定符的字串。strtok_s()函式需要四個引數工作更安全,需要四個引數str,str_size,deliniters,pptr。
C語言學習 字串
字串宣告 char 變數名 數量 示例 include intmain printf 輸出字串ch2 s n ch2 方法3 char ch3 省略字串長度,長度編譯器在編譯時會幫忙計算 printf 輸出字串ch3 s n ch3 方法4 char ch4 name 此時末尾不需要加上 0 大括號...
C 語言學習 字串
c 字串 在 c 語言中國,字串實際上是使用 null 字元 0 終止的一維字元陣列。因此,乙個以 null 結尾的字串,包含了組成字串的字元。下面的宣告和初始化建立了乙個 hello 字串。由於在陣列的末尾儲存了空字元,所以字元陣列的大小比單詞 hello 的字元數多乙個。char greetin...
C語言學習 字串(10 19)
for i 0 str i 0 i 表示讀入乙個字串,直到遇到空白字元為止 當遇到空白字元時,空白字元之後的字元留在了 輸入緩衝區 中,下次遇到scanf 時自動被讀取 printf s str 表示輸出乙個字串,直到遇到 0 為止 gets str 以回車符 n 作為字串終止符,同時將 n 從輸入...