當(dāng)前位置:首頁(yè) > 嵌入式培訓(xùn) > 嵌入式學(xué)習(xí) > 講師博文 > 什么是字符串?dāng)?shù)組
什么是字符串?dāng)?shù)組
時(shí)間:2018-12-28 來(lái)源:華清遠(yuǎn)見(jiàn)
一、概念理解
1.C語(yǔ)言中沒(méi)有字符串類型,用一片內(nèi)存空間保存一串字符,這片空間稱作字符數(shù)組。
2.以‘\0’結(jié)尾的字符數(shù)組被稱為字符串?dāng)?shù)組。‘\0’是字符串結(jié)束的標(biāo)志。
3.用雙引號(hào)括起來(lái)的都是字符串。
二、初始化
char str[6] = {'h','e','l','l','o','\0'};//字符串?dāng)?shù)組
char str[6] = “hello”; //簡(jiǎn)化版寫(xiě)法
char str[6] = {'h','e','l','l','o'};//str[5]的內(nèi)存上自動(dòng)賦值為’\0’
char str[10]= {'h','e'} //其余8個(gè)元素自動(dòng)賦值為’\0’
char str[]=“hello”;//元素個(gè)數(shù)可以省略 數(shù)組分配空間大小為字符串中實(shí)際賦值字節(jié)數(shù)6
char *str=“hello”;//str是指針 存儲(chǔ)字符串首地址 指向字符串
注意:字符數(shù)組與字符串?dāng)?shù)組
char str[5] = {'h','e','l','l','o'};//是字符數(shù)組而不是字符串?dāng)?shù)組,因?yàn)闆](méi)有’\0’
三、賦值
1.利用scanf函數(shù)接收字符串。scanf遇到空格或者回車就結(jié)束輸入 也就是說(shuō) 字符串中不可以有空格

2.利用gets函數(shù)接收字符串。可以接受有空格的字符串

3.(1)字符串拷貝--strcpy,該函數(shù)會(huì)將源的數(shù)據(jù)拷貝到目標(biāo)中,并且會(huì)覆蓋掉目標(biāo)中原有的數(shù)據(jù),目標(biāo)的內(nèi)存必須能夠存放拷貝的數(shù)據(jù)。
(2)使用這個(gè)函數(shù)必須加頭文件<string.h>

四、求字符串大小
1.使用strlen函數(shù)
(1)它是一個(gè)字符串函數(shù),它相當(dāng)于一個(gè)計(jì)數(shù)器,當(dāng)它遇到’\0’時(shí)就停止計(jì)數(shù)。(不含字符‘\0’)
(2)需要加頭文件<string.h>
(3)注意:這個(gè)函數(shù)只能用于求得字符串大小,不能求其他類型大小。

結(jié)果:

2.使用sizeof 是關(guān)鍵字 求得變量或類型所占內(nèi)存空間大小

結(jié)果:

3.

華清遠(yuǎn)見(jiàn)90+項(xiàng)目獲批!教育部2021最新協(xié)同育人項(xiàng)目名
華清遠(yuǎn)見(jiàn)榮獲2021騰訊教育“年度口碑影響力職業(yè)教育品
華清遠(yuǎn)見(jiàn)受邀參加2021年武漢民辦高校信息學(xué)科合作聯(lián)盟
溫暖同行共創(chuàng)佳績(jī) 2019華清遠(yuǎn)見(jiàn)北京總部年會(huì)大曝光
助力高校AI人工智能學(xué)科建設(shè) 華清遠(yuǎn)見(jiàn)人工智能師資班
華清遠(yuǎn)見(jiàn)受邀參加四川省物聯(lián)網(wǎng)年會(huì),榮獲優(yōu)秀企業(yè)專家
