C語言字元陣列

2021-10-02 09:12:44 字數 1814 閱讀 8918

eg:

char s1[5] = ;

char s2[6] = ; //系統預設在字串後面加上乙個字串結束標誌符'\0',所以最少需要6個長度的字元陣列才能容納

eg:

char s1 = ;  //字元陣列s1長度為5

char s2 = ; //字元陣列s2長度,系統預設在字串後面加上乙個字串結束標誌符'\0'

eg:

char s1[5] = ;

char s2[6] = ;

printf("s1: %s\n", s1); //列印內容不確定,因為字串的結束標誌位'\0'

printf("s2: %s\n", s2); //列印"china"

eg:

char s1[20];

char s2[20];

char s3[20];

scanf("%s%s%s", s1, s2, s3); //每個字串以換行符或者空格分隔,並且自動在每個字串後面加上'\0'

cout << s1 << endl;

cout << s2 << endl;

cout << s3 << endl;

eg:

//strlen(s) 函式返回的字串的長度(與儲存的內容有關),單位是位元組數

char s1[20] = ;

char s2[20] = ;

char s3[20] = ;

printf("s1的長度:%d\n", strlen(s1)); //長度不確定

printf("s1的長度:%d\n", strlen(s2)); //列印9,字串的長度計算:從字串開始直到遇到'\0',不包括'\0'

printf("s1的長度:%d\n", strlen(s3)); //返回的字串的長度單位是位元組

//補充 strlen與sizeof的區別

//strlen是乙個函式,sizeof 是乙個關鍵字

//strlen返回字串的長度(與儲存內容有關),sizeof返回記憶體的實際長度(與儲存內容無關)

eg:

char s1[10] = ;

char s2[10] = ;

strcat(s1, s2); //將s2中的字串拼接到字串s1後面

printf("%s\n", s1); //列印 "china"

eg:

char s1[10] = "123";

char s2[10] = "678"; //定義時可以使用字串常量進行初始化

//s1 = "678"; //不可以使用字串常量為字元陣列賦值

strcpy(s1, "456"); //將"456"挪到s1執行的記憶體,s1中原來的內容被覆蓋

puts(s1);

strcpy(s1, s2);

puts(s1);

eg:

//strcmp(s1,s2) 函式用法:

//1. s1 == s2 返回0

//2. s1 < s2 返回正整數

//3. s1 > s2 返回負整數

//strcmp函式一般不用來比較字串大小,常用於比較字串是否相等

char s1 = "123";

char s2 = "123";

if (strcmp(s1, s2) == 0)

else

C語言 陣列(字元陣列)

軟體中,文字處理比數字處理更重要,而處理文字時需要用到字串,所以掌握字串的知識很重要。字串一定有 0 結尾,只有以 0 結尾的字元陣列才能稱為字串。0 是字串的標誌,也是字串結束的標誌。一 字串的定義 char arr 10 char brr 5 不是字串,沒有 0 char crr 5 最後乙個元...

C語言(字元陣列)

編寫程式時,經常輸出一些字元資訊,這些資訊通常是由多個字元組成的。將陣列元素定義為char型別,用陣列來存放字元資訊。通常採用迴圈方式來實現輸入輸出功能。使用字元陣列儲存字串 void main for int i 0 i 6 i getchar 複製 0 迴圈結束 void main getcha...

C語言字元陣列

一 c語言中的字串 字串 由零個或多個字元組成且通過 雙引號括起來的有限序列就叫做字串。在c語言中沒有字串型別,故我們用 字元陣列來處理字串。二 字元陣列的定義 因為字元陣列是存放字元的陣列,故其 與陣列定義類似。其定義一般為 char a 10 表示定義了10個位元組的連續記憶體空間。三 字元陣列...