先插乙個小知識點
string str = "abc"
str += 'd';
cout<string 轉char* 的時候 string.c_str() 和string.data()的區別
c_str()返回的以'\0'結尾
data()返回的不以'\0'結尾
copy(p,n,size_type_off = 0); 從string型別物件中最多複製n個字元到字元指標p指向的空間中,預設從首字元開始,但是也可以指定開始複製的位置
string的c_str()返回的指標是由string管理的,他的生命週期是string的生命期 例如下面的例子是錯誤的:
char* p;
string a = "123";
p = a.c_str();
cout《另外這個指標始終指向的是string的內容, 如果想讓指標的東西不變的話,只能先strcpy()複製到自己的記憶體中
1string s = "
123";2
3const
char* a =s.c_str();
4 char* b = strdup(a);
5 cout1236
7 s = "
abc";8
9 coutabccout<
char* 轉string
char* p = "abc";
string s = string(p);
string 和cstring的區別
cstring是atl/mfc共享的 (atl, active template library 活動模板庫, 是一種微軟程式塊,支援利用c++編寫asp**以及其它activex程式)
string 是c++標準庫的
string 轉cstring
cstring a;
a.format("%s", string.c_str());
char* 轉cstring
cstring a;
a.format("%s", char*);
char* 轉int
#include
int atoi(char*); long atol(char*);
char陣列與string轉換
1 char陣列轉string 有很多種方法 假設c字串定義為char ch hello world 1.向建構函式傳入c字串建立string物件 string str ch 2.使用拷貝建構函式建立string物件 string str ch 3.對已有的string物件呼叫string類內部定義...
char陣列與string轉換
1 char陣列轉string 有很多種方法 假設c字串定義為char ch hello world 1.向建構函式傳入c字串建立string物件 string str ch 2.使用拷貝建構函式建立string物件 string str ch 3.對已有的string物件呼叫string類內部定義...
Char 與 LPCTSTR 型別的互相轉換
1.char 轉換成 lpctstr char ch 1024 wo shi ni baba int num multibytetowidechar 0,0,ch,1,null,0 wchar t wide new wchar t num multibytetowidechar 0,0,ch,1,w...