最大的區(qū)別就是C風(fēng)格的字符串是靜態(tài)的,不可以動(dòng)態(tài)變化,使用極為麻煩。
而C++的std::string類型動(dòng)態(tài)管理,非常方便。
C風(fēng)格字符串和char數(shù)組是不一樣的,看下面兩種定義:
char carr1 = {'a', 'b', 'c'};
char carr2 = {'a', 'b', 'c', '/0'};
看上面,carr2可以說成是C風(fēng)格字符串,carr1就不是C風(fēng)格字符串,C風(fēng)格字符串必須要以'/0'結(jié)尾的。
string類是標(biāo)準(zhǔn)庫的類,并不是內(nèi)置類型,標(biāo)準(zhǔn)庫就像是我們自己定義的類差不多的,string類型對(duì)象沒有標(biāo)配'/0'結(jié)尾的。如果需要用string類給C風(fēng)格字符串賦值的話,后面是需要添加'/0'的。
新聞熱點(diǎn)
疑難解答
圖片精選