原文:std::string中data()和c_str()的區別

data和c str data 和c str 都是用來獲取底層字符串的首地址的,但是在C 中規定的是data 返回的字符串不保證有結尾 ,但是c str 返回的字符串保證有結尾 ,也就是C 標准在設計字符串的時候是想拋棄C風格的字符串語法的,但是在實際應用中,往往需要將C 的string轉換為C風格的字符串const char 。 這一點平常使用的時候沒問題,但如果想直接通過C風格的接口修改str ...

2020-11-11 19:26 0 564 推薦指數:

查看詳情

std::string 的方法c_str() 和 data() 有什么區別

1、從C++標准上的解釋來看,只有一點區別c_str() 返回一個指向正規C字符串的指針常量,該指針保證指向一個 size() + 1 長度的空間,而且最后一個字符肯定是 \0 ; 而 data() 返回的指針則保證指向一個size()長度的空間,不保證有沒有 ...

Sat Apr 21 01:40:00 CST 2018 0 8329
c++ string c_str() 和data()區別

看下面的英文解釋: const char* c_str ( ) const;Get C string equivalentGenerates a null-terminated sequence of characters (c-string) with the same content ...

Wed Jun 13 05:44:00 CST 2012 0 5675
c++ string c_str() 和data()區別

看下面的英文解釋: const char* c_str ( ) const;Get C string equivalentGenerates a null-terminated sequence of characters (c-string) with the same content ...

Tue Jul 08 01:56:00 CST 2014 0 2741
Stringc_str()的用法

c_str函數的返回值是const char*的,不能直接賦值給char*。 c++語言提供了兩種字符串實現,其中較原始的一種只是字符串的 c語言 實現。與C語言的其他部分一樣,它在c++的所有實現可用,我們將這種實現提供的字符串對象,歸為c-串,每個c-串char*類型 ...

Sat Aug 31 00:25:00 CST 2013 0 2684
stringc_str()、data()、copy(p,n)函數的用法

標准庫的string類提供了3個成員函數來從一個string得到c類型的字符數組:c_str()、data()、copy(p,n)。 1. c_str():生成一個const char*指針,指向以空字符終止的數組。 注: ①這個數組的數據是臨時的,當有一個改變這些數據的成員函數被調用 ...

Mon Mar 26 03:37:00 CST 2012 1 94805
C++c_str()的用法以及.data()

這兩個函數經常用到,總是記不住,記下來,方便翻閱 c_str()和data():生成一個const char*指針,指向一個臨時數組。 c_str()函數返回一個指向正規C字符串的指針,內容與string串相同。 C++c_str()主要用法就是為了與C語言兼容,在C語言中沒有string ...

Fri Feb 28 01:21:00 CST 2020 0 1445
stringc_str()使用時的坑

先看一段代碼和它的運行結果: 看到結果了么這個運行的結果和我們理解的是不會有差距.對於經驗豐富的開發者可能會微微一笑,但是對於一個剛剛學習的人就開始疑惑了.這里主要說兩個問題: 1、聲明了一個string實例,使用c_str()進行賦值后,可以正常輸出c_str()的值 ...

Sun Apr 01 19:35:00 CST 2018 0 15173
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM