可以通過(guò)字符數(shù)組或字符指針來(lái)定義字符串,也可以用宏定義對(duì)常量字符串進(jìn)行定義。
創(chuàng)新互聯(lián)公司是一家專注于網(wǎng)站設(shè)計(jì)制作、網(wǎng)站制作與策劃設(shè)計(jì),梅縣網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)10余年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:梅縣等地區(qū)。梅縣做網(wǎng)站價(jià)格咨詢:13518219792
下面通過(guò)舉例來(lái)分別進(jìn)行說(shuō)明:
char str1[] = "HelloWorld"; // 通過(guò)字符數(shù)組來(lái)定義字符串"HelloWorld",數(shù)組中每個(gè)存儲(chǔ)單元存放一個(gè)字符
char *str2 = "HelloWorld"; // 通過(guò)字符指針來(lái)定義字符串"HelloWorld",指針str2指向一個(gè)存放字符串"HelloWorld"的連續(xù)地址單元的首地址
#define str3 "HelloWorld"; // 通過(guò)宏定義來(lái)定義字符串"HelloWorld",等價(jià)于str3="HelloWorld"
定義字符串的方法如下:
#include stdio.h
#include stdlib.h
int main()
{
//定義字符串的幾種方式
//字符串和字符數(shù)組的區(qū)別:最后一位是否是空字符
char names1[] = {'j', 'a', 'c', 'k', '\0'};
char names2[50] = "jack";
char * names3 = "jack";
printf("數(shù)組所占空間大?。?d\n", sizeof(names1));
printf("數(shù)組所占空間大?。?d\n", sizeof(names2));
//動(dòng)態(tài)輸入
printf("請(qǐng)輸入新名稱: ");
scanf("%s", names2);
printf("%s\n", names2);
return 0;
}
擴(kuò)展資料
字符串函數(shù)的應(yīng)用
①連接運(yùn)算 concat(s1,s2,s3…sn) 相當(dāng)于s1+s2+s3+…+sn.
例:concat(‘11’,'aa’)='11aa’;
②求子串。
Copy(s,I,I) 從字符串s中截取第I個(gè)字符開(kāi)始后的長(zhǎng)度為l的子串。
例:copy(‘a(chǎn)bdag’,2,3)=’bda’
③刪除子串。
過(guò)程 Delete(s,I,l) 從字符串s中刪除第I個(gè)字符開(kāi)始后的長(zhǎng)度為l的子串。
例:s:=’abcde’;delete(s,2,3);結(jié)果s:=’ae’
④插入子串。
過(guò)程Insert(s1,s2,I) 把s1插入到s2的第I個(gè)位置。
例:s:=abc;insert(‘12’,s,2);結(jié)果s:=’a12bc’
參考資料來(lái)源:百度百科-字符串
需要準(zhǔn)備的材料分別有:電腦、C語(yǔ)言編譯器。
1、首先,打開(kāi)C語(yǔ)言編譯器,新建一個(gè)初始.cpp文件,例如:test.cpp。
2、在test.cpp文件中,輸入C語(yǔ)言代碼:
char a[10] = "hello";
char b[] = "hello";
char *c = "hello";
printf("%s%s%s", a, b, c);
3、編譯器運(yùn)行test.cpp文件,此時(shí)通過(guò)所有3種定義字符串的方法成功定義被輸出。