string char 互相轉(zhuǎn)換 string怎么轉(zhuǎn)化為char?
string怎么轉(zhuǎn)化為char?1. 如果要將字符串轉(zhuǎn)換為char*,可以使用string Str()提供的函數(shù)C或函數(shù)data(),data除了字符串內(nèi)容外不附加終止符“0”,并且C Str()返回
string怎么轉(zhuǎn)化為char?
1. 如果要將字符串轉(zhuǎn)換為char*,可以使用string Str()提供的函數(shù)C或函數(shù)data(),data除了字符串內(nèi)容外不附加終止符“0”,并且C Str()返回以“0”結(jié)尾的字符數(shù)組。2、 const char*c_ustr()c_str()函數(shù)返回一個(gè)指向普通c字符串的指針,其內(nèi)容與字符串相同。這是為了與C語言兼容。C語言中沒有字符串類型,因此必須傳遞字符串類object的成員函數(shù)C。Str()將字符串對象轉(zhuǎn)換為C語言中的字符串樣式。注意:必須使用strcpy()函數(shù)來操作方法C。Str()返回的指針,例如:char*CString s=“1234”C=s。C。Str()的最后一個(gè)內(nèi)容是垃圾,因?yàn)閟對象被破壞,它的內(nèi)容被這樣處理:char c[20]string s=“1234”strcpy(c,s.custr()),因此沒有錯(cuò)誤,custr()返回一個(gè)臨時(shí)指針,不能對其進(jìn)行操作。另一個(gè)例子是C_2;Str()返回一個(gè)字符串,其中包含char*格式的字符串。如果函數(shù)需要char*參數(shù),則可以使用C的ustr()方法:String s=“Hello world!“printf(%s”,s.Custr())//輸出“你好,世界!“
C char轉(zhuǎn)string?
由于string沒有類似于string(char)的構(gòu)造函數(shù),因此可以將char轉(zhuǎn)換為char*或char[,然后使用string的構(gòu)造函數(shù)string(char*)構(gòu)造string。示例代碼如下:char=“a”chartmp[1]TMP[0]=cstringresult(TMP,1)//使用第二個(gè)參數(shù),因?yàn)樗甘咀址拈L度為1,否則會(huì)生成亂碼