字符串是什么 在C 編程中,領(lǐng)導(dǎo)堅(jiān)持用char而不用string,string有那么可怕嗎?
在C 編程中,領(lǐng)導(dǎo)堅(jiān)持用char而不用string,string有那么可怕嗎?在C中優(yōu)先使用字符串是一個(gè)好習(xí)慣。除非C的頑固習(xí)慣,否則應(yīng)該使用字符串而不是字符。Char用于處理任何8位數(shù)據(jù)類型,如邏
在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)始人推薦。
選擇使用哪一種并不困難。
字符大小關(guān)系的順序?
通過(guò)編程判斷兩個(gè)字符串大小的方法:
首先比較兩個(gè)字符串的第一個(gè)字符,然后字母順序更大,例如:
Cat>apple,因?yàn)镃晚于a
如果字母相同,則繼續(xù)比較第二個(gè)字符。
如果最后一個(gè)相同,則有兩種情況:
如果字符串的長(zhǎng)度相同,則兩個(gè)字符串相等,否則較長(zhǎng)的字符串較大。
空字符串是特殊的,它比除自身以外的所有字符串都小,也就是說(shuō),空字符串是最小的。
某個(gè)字符串占了多少個(gè)字節(jié)?
不同的字符占用不同的字節(jié)。ASCII碼:一個(gè)英文字母(不分大小寫)占用一個(gè)字節(jié)的空間,一個(gè)漢字占用兩個(gè)字節(jié)的空間。二進(jìn)制數(shù)序列,作為計(jì)算機(jī)中的數(shù)字單元,一般是8位二進(jìn)制數(shù),轉(zhuǎn)換成十進(jìn)制。最小值為0,最大值為255。例如,ASCII碼是一個(gè)字節(jié)。UTF-8編碼:一個(gè)英文字符等于一個(gè)字節(jié),一個(gè)中文字符(包括繁體中文)等于三個(gè)字節(jié)。Unicode編碼:一個(gè)英文等于兩個(gè)字節(jié),一個(gè)中文(包括繁體中文)等于兩個(gè)字節(jié)。擴(kuò)展數(shù)據(jù)包含比單個(gè)數(shù)組多需要12個(gè)字節(jié)的變體數(shù)組。