1、對於int 轉為char
直接上代碼:
正確做法:
void toChar(int b) { char u; char buffer[65]; _itoa( b, buffer, 10); //正確解法一 u = buffer[0]; //u = b + 48; //正確解法二 u = (char)b ;//GCC下錯誤 u = static_cast <char> (b);//GCC下錯誤 }
不要想當然以為(char)b 就可以,在GCC下這是不行的,推薦用_itoa,標准庫函數
2、對於int 轉string
直接用函數to_string
3、對於string 類型的變量input轉int
atoi(input.c_str())
4、字符串的split,分兩種
一、用空格分隔字符串 str = "I love China"
istringstream in(str);
for(string word; in>>word; i++) {
cout <<"word is " << word << endl;
}
輸出 :
I
love
China
二、用特殊符號(比如,)分隔,例如string input = "ab,cd,e"
istringstream in(input);
string s;
vector<string> v;
while(getline(in,s,',')) {
v.push_back(s);
}
最后v = {"ab","cd","e"}