1.c_str()函式是string類中的乙個函式,它返回當前字串的首字元位址。c_str函式的返回值是const char*的,不能直接賦值給char*,所以就需要我們進行相應的操作轉化,下面就是這一轉化過程。標準標頭檔案包含操作c-串的函式庫。這些庫函式表達了我們希望使用的幾乎每種字串操作。 當呼叫庫函式,客戶程式提供的是string型別引數,而庫函式內部實現用的是c-串,
因此需要將string物件,轉化為char*物件,而c_str()提供了這樣一種方法,它返回const char*型別
(可讀不可改)的指向字元陣列的
指標。
函式宣告:const char *c_str();
c_str()函式返回乙個指向正規c字串的指標, 內容與本string串相同.
這是為了與c語言相容,在c語言中沒有string型別,故必須通過string類物件的成員函式c_str()把string 物件轉換成c中的字串樣式。
注意:一定要使用strcpy()函式 等來操作方法c_str()返回的指標。
c_str()返回的是乙個分配給const char*的位址,其內容已設定為不可變更,如果再把此位址賦給乙個可以變更內容的char*變數,就會產生衝突。
c_str() 以const char* 型別返回 string 內含的字串
如果乙個函式要求char*引數,可以使用c_str()方法:
string s = "hello world!";
printf("%s", s.c_str()); //輸出 "hello world!"
下面說一下我自己的理解,先上**:
int main()
在我們的工程中,用到了c++的string,但是輸出的時候,我們用到了c語言的printf函式,所以就需要使用c_str()函式,進行轉換。
C 中的c str 函式用法
語法 1 const char c str c str 函式返回乙個指向正規c字串的指標常量,內容與本string串相同。這是為了與c語言相容,在c語言中沒有string型別,故必須通過string類物件的成員函式c str 把string 物件轉換成c中的字串樣式。注意 一定要使用strcpy 函...
C 中的 C str 函式用法
轉中轉 語法 const char c str c str 函式返回乙個指向正規c字串的指標常量,內容與本 string 串相同。這是為了與 c 語言相容,在 c 語言中沒有 string 型別,故必須通過 string 類物件的成員函式 c str 把 string 物件轉換成 c 中的字串樣式。...
c str 函式用法
語法 const char c str c str 函式返回乙個指向正規c字串的指標,內容與本string串相同.c str 就是把string類物件轉換成和c相容的char 型別。這是為了與c語言相容,在c語言中沒有string型別,故必須通過string類物件的成員函式c str 把string...