C 中的 C str 函式用法

2022-08-12 09:45:18 字數 835 閱讀 6783

轉中轉~\(≧▽≦)/~ :

語法:

const

char *c_str();

c_str() 函式返回乙個指向正規c字串的指標常量, 內容與本 string 串相同。 這是為了與 c 語言相容,在 c 語言中沒有 string 型別,故必須通過 string 類物件的成員函式 c_str() 把 string 物件轉換成 c 中的字串樣式。

注意:一定要使用 strcpy() 函式 等來操作方法 c_str() 返回的指標。

比如:最好不要這樣:

char*c; 

string s="

1234";

c = s.c_str(); //

c最後指向的內容是垃圾,因為s物件被析構,其內容被處理,同時,編譯器也將報錯——將乙個const char *賦與乙個char *。

應該這樣用:

char c[20

]; string s="

1234";

strcpy(c,s.c_str());

這樣才不會出錯,c_str() 返回的是乙個臨時指標,不能對其進行操作。 再舉個例子 c_str() 以 char* 形式傳回 string 內含字串 如果乙個函式要求 char* 引數,可以使用 c_str() 方法:

string s = "

hello world!

"; printf("%s

", s.c_str()); //

輸出 "hello world!"

C 中的c str 函式用法

1.c str 函式是string類中的乙個函式,它返回當前字串的首字元位址。c str函式的返回值是const char 的,不能直接賦值給char 所以就需要我們進行相應的操作轉化,下面就是這一轉化過程。標準標頭檔案包含操作c 串的函式庫。這些庫函式表達了我們希望使用的幾乎每種字串操作。當呼叫庫...

C 中的c str 函式用法

語法 1 const char c str c str 函式返回乙個指向正規c字串的指標常量,內容與本string串相同。這是為了與c語言相容,在c語言中沒有string型別,故必須通過string類物件的成員函式c str 把string 物件轉換成c中的字串樣式。注意 一定要使用strcpy 函...

c str 函式用法

語法 const char c str c str 函式返回乙個指向正規c字串的指標,內容與本string串相同.c str 就是把string類物件轉換成和c相容的char 型別。這是為了與c語言相容,在c語言中沒有string型別,故必須通過string類物件的成員函式c str 把string...