C語言-字符串(單個字符)


一.字符串(單個字符)的定義

1.單個字符的定義

char i = ‘x’ (單個字符的定義)

字符串創建后為常量無法修改

2.一維字符串數組的定義

char i []=”xxxx”;(此方式定義的一維字符串數組必須立刻賦值)
char i [4];(此方式相當於在存儲器里面建立一個可以存儲3個字符的數組空間)
char i [4]=”xxxx”;
char i [4]={‘x’’x’’x’’x’};

其中定義的數組的元素數要比實際賦值的數量多一,用於存放\0位置

字符數組只有在定義時才能將整個字符串一次性地賦值給它,一旦定義完了,就只能一個字符一個字符地賦值了。

3.二維字符串數組的定義

char i[][80] = {
"xxxxxxx",
"xxxxxxx",
};

第一個方括號代表數組的行數,第二個方括號代表數組的列數,同時定義字符的個數(要比實際應用多一,用於存放\0位置)。

二.字符串(單個字符)和一維字符數組輸入

1.scanf函數

給字符串(單個字符)賦值

scanf(“%2s”, &x);(其中x為定義的char類型變量的名字)

給字符數組賦值

scanf(“%2s”, x);(其中x為定義的字符數組名字)

 

三. 字符串(單個字符)和一維字符數組的輸出

1.單個字符的輸出

printf (“%c”, x);對單個字符進行輸出

X為char類型變量的名字

2.字符數組的輸出

printf(“%s”, x);對字符串進行輸出

X為字符數組名

四.字符串的處理

1.string.h頭文件的使用
定義方法:#include <string.h>


常用的幾個函數及功能:

strchr() 查找字符
stremp() 比較字符串
strstr() 在字符串中查找字符串 ,使用方法:strstr("被查找字符串", "需要查找的字符串");
strcpy() 復制字符串
strlen() 返回字符串的長度
strcat() 連接字符串
strdup() 復制字符串到堆上
strcmp() 用於比較兩個字符串並根據比較結果返回整數。基本形式為strcmp(str1,str2),若str1=str2,則返回零;若str1<str2,則返回負數;若str1>str2,則返回正數

atoi 函數(在<stdlib.h>庫文件中),是把字符串轉換成整型數的一個函數

五.字符數組與指針之間一些注意事項

1.指針退化問題

char s[] ="xxxx";
char * t = s;

字符數組變量賦值給指針時,指針變量只會包含數組的地址信息,而丟失了數組的長度信息,這個信息的丟失稱為指針退化。

六.為什么字符串可以賦值給字符指針變量

char * a = "xxxx"

雙引號做了3件事:  
1.申請了空間(在常量區),存放了字符串 
2. 在字符串尾加上了'/0'    
3.返回地址


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM