国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C > 正文

c_str()的用法詳細解析

2020-01-26 15:54:00
字體:
供稿:網(wǎng)友

const char *c_str();
c_str()函數(shù)返回一個指向正規(guī)C字符串的指針, 內(nèi)容與本string串相同.

c_str()就是把string類對象轉(zhuǎn)換成和c兼容的char *類型。
這是為了與c語言兼容,在c語言中沒有string類型,故必須通過string類對象的成員函數(shù)c_str()把string 對象轉(zhuǎn)換成c中的字符串樣式。
注意:一定要使用strcpy()函數(shù) 等來操作方法c_str()返回的指針
比如:最好不要這樣:
char* c;
string s="1234";
c = s.c_str(); //c最后指向的內(nèi)容是垃圾,因為s對象被析構(gòu),其內(nèi)容被處理

應(yīng)該這樣用:
char c[20];
string s="1234";
strcpy(c,s.c_str());
這樣才不會出錯,c_str()返回的是一個臨時指針,不能對其進行操作

再舉個例子
c_str() 以 char* 形式傳回 string 內(nèi)含字符串
如果一個函數(shù)要求char*參數(shù),可以使用c_str()方法:
string s = "Hello World!";
printf("%s", s.c_str()); //輸出 "Hello World!"

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 林芝县| 苍梧县| 儋州市| 霞浦县| 七台河市| 汝州市| 漠河县| 博兴县| 探索| 永清县| 界首市| 伊宁市| 盖州市| 七台河市| 合肥市| 宁远县| 芜湖县| 海原县| 德江县| 清镇市| 岳西县| 华容县| 武安市| 垫江县| 廊坊市| 靖江市| 隆安县| 青海省| 乡城县| 玉屏| 方山县| 武宁县| 大足县| 通山县| 茶陵县| 宁波市| 宜昌市| 施秉县| 甘肃省| 化德县| 司法|