標籤:print order int pretty ted strcpy div 單詞 c 語言
C 字串
在 C 語言中國,字串實際上是使用 null 字元 ‘\0‘ 終止的一維字元數組。因此,一個以 null 結尾的字串,包含了組成字串的字元。
下面的聲明和初始化建立了一個 "Hello" 字串。由於在數組的末尾儲存了Null 字元,所以字元數組的大小比單詞 “Hello”的字元數多一個。
char greeting[6] = {‘H‘, ‘e‘, ‘l‘, ‘l‘, ‘o‘, ‘\0‘};
依據數組初始化規則,我們可以把上面的語句寫成:
char greeting[] = "Hello";
#include <stdio.h>int main(){ char greeting[6] = {‘H‘, ‘e‘, ‘l‘, ‘l‘, ‘o‘, ‘\0‘}; printf("Greeting message: %s\n", greeting); return 0;}
C 中有大量操作字串的函數
| 1 |
strcpy(s1, s2); 複製字串 s2 到字串 s1。 |
| 2 |
strcat(s1, s2); 連接字串 s2 到字串 s1 的末尾。 |
| 3 |
strlen(s1); 返回字串 s1 的長度。 |
| 4 |
strcmp(s1, s2); 如果 s1 和 s2 是相同的,則返回 0; 如果 s1 < s2 則返回小於0,否則返回大於0。 |
| 5 |
strchr(s1, ch); 返回一個指標,指向字串 s1 中字串 ch 的第一次出現的位置。 |
| 6 |
strstr(s1, s2); 返回一個指標,指向字串 s1 中字串 s2 的第一次出現的位置。 |
#include <stdio.h>#include <string.h>int main(){ char str1[12] = "Hello"; char str2[12] = "World"; char str3[12]; int len; /* 複製 str1 到 str3 */ strcpy(str3, str1); printf("strcpy( str3, str1) : %s \n", str3); /* 串連 str1 和 str3 */ strcat(str1, str2); printf("strcat( str1, str2) : %s \n", str1); /* 串連後, str1 的總長度 */ len = strlen(str1); printf("strlen(str1) : %d \n", len); return 0;}
// 執行結果
strcpy( str3, str1) : Hellostrcat( str1, str2): HelloWorldstrlen(str1) : 10
C 語言學習——字串