淺析string類字符串和C風格字符串之間的區(qū)別
最大的區(qū)別就是C風格的字符串是靜態(tài)的,不可以動態(tài)變化,使用極為麻煩。
而C++的std::string類型動態(tài)管理,非常方便。
C風格字符串和char數(shù)組是不一樣的,看下面兩種定義:
char carr1 = {'a', 'b', 'c'};
char carr2 = {'a', 'b', 'c', '\0'};
看上面,carr2可以說成是C風格字符串,carr1就不是C風格字符串,C風格字符串必須要以'\0'結(jié)尾的。
string類是標準庫的類,并不是內(nèi)置類型,標準庫就像是我們自己定義的類差不多的,string類型對象沒有標配'\0'結(jié)尾的。如果需要用string類給C風格字符串賦值的話,后面是需要添加'\0'的。
相關(guān)文章
C語言素數(shù)(質(zhì)數(shù))判斷的3種方法舉例
這篇文章主要給大家介紹了關(guān)于C語言素數(shù)(質(zhì)數(shù))判斷的3種方法,質(zhì)數(shù)是只能被1或者自身整除的自然數(shù)(不包括1),稱為質(zhì)數(shù),文中通過代碼介紹的非常詳細,需要的朋友可以參考下2023-11-11C++11?condition_variable條件變量的用法說明
這篇文章主要介紹了C++11?condition_variable條件變量的用法說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07C++可變參數(shù)函數(shù)的實現(xiàn)方法示例
這篇文章主要給大家介紹了關(guān)于C++可變參數(shù)函數(shù)的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-12-12