c語(yǔ)言中string怎么用 c語(yǔ)言string定義?
c語(yǔ)言string定義?C語(yǔ)言定義字符串:C語(yǔ)言用char表示存儲(chǔ)的字符,C語(yǔ)言沒(méi)有字符串類型的字符串;所以C語(yǔ)言用字符數(shù)組和字符指針來(lái)實(shí)現(xiàn)字符串功能;C語(yǔ)言的字符數(shù)組只能在定義時(shí)一起賦值,然后只能逐
c語(yǔ)言string定義?
C語(yǔ)言定義字符串:
C語(yǔ)言用char表示存儲(chǔ)的字符,C語(yǔ)言沒(méi)有字符串類型的字符串;
所以C語(yǔ)言用字符數(shù)組和字符指針來(lái)實(shí)現(xiàn)字符串功能;
C語(yǔ)言的字符數(shù)組只能在定義時(shí)一起賦值,然后只能逐個(gè)指定單個(gè)元素;
char string0[10
]char String 1[]=“越獄”
char String 2[100]=“Michael Scofield”
1句表示定義長(zhǎng)度為10的字符串,但不指定;2句表示定義字符數(shù)組string1,并對(duì)其進(jìn)行初始化,使其長(zhǎng)度自動(dòng)為13(字符串“監(jiān)獄”)“break”中的字符數(shù)加上句末的“0”,定義了一個(gè)包含100個(gè)元素的字符數(shù)組string2,并初始化了17個(gè)元素(“Michael Scofield”加上句末的“0”)。
C語(yǔ)言本身沒(méi)有設(shè)置定義字符串變量的類型,字符串存儲(chǔ)完全依賴于字符數(shù)組,但字符數(shù)組不等于字符串變量。字符串存儲(chǔ)在字符類型一維數(shù)組中,字符“0”被指定為字符串結(jié)束標(biāo)志。
在C 編程中,領(lǐng)導(dǎo)堅(jiān)持用char而不用string,string有那么可怕嗎?
在C中優(yōu)先使用字符串是一個(gè)好習(xí)慣。除非C的頑固習(xí)慣,否則應(yīng)該使用字符串而不是字符。
Char用于處理任何8位數(shù)據(jù)類型,如邏輯值、整數(shù)、字符ASCII碼等。要處理字符串,需要使用Char[]數(shù)組,這很麻煩,也很難控制。
String是一個(gè)模板類,專門用于處理字符串,并封裝了許多成員函數(shù)來(lái)處理字符串。它是C標(biāo)準(zhǔn)庫(kù)的一部分,所有C實(shí)現(xiàn)都支持它,并由C創(chuàng)始人推薦。
選擇使用哪一種并不困難。