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