wangliqiang 2017.01.18ios
#include <string> string str="12345"; int b=atoi(str.c_str());
#include <string> //使用C++標準庫的string類時 using namespace std; //同上 #include <sstream> #include <iostream> #include <stdlib.h> //要將string類和int類型直接轉換最好有這些包含, //由於本身寫一個轉換函數比較方便,函數定義參考以下 string getstring ( const int n ) { std::stringstream newstr; newstr<<n; return newstr.str(); } // string 轉 CString CString.format(」%s」, string.c_str()); // char 轉 CString CString.format(」%s」, char*); // char 轉 string string s(char *); // string 轉 char * char *p = string.c_str(); // CString 轉 string string s(CString.GetBuffer()); // string -> CString CString.format(」%s」, string.c_str()); // 用c_str()確實比data()要好. // char -> string string s(char *); // 只能初始化,在不是初始化的地方最好仍是用assign(). // CString -> string string s(CString.GetBuffer()); // GetBuffer()後必定要ReleaseBuffer(),不然就沒有釋放緩衝區所佔的空間. // 《C++標準函數庫》中說的 // 有三個函數能夠將字符串的內容轉換爲字符數組和C—string // 1. data(),返回沒有」\0「的字符串數組 // 2. c_str(),返回有」\0「的字符串數組 // 3. copy() // CString與int、char*、char[100]之間的轉換- - // CString互轉int // 將字符轉換爲整數,能夠使用atoi、_atoi64或atol。 // 而將數字轉換爲CString變量,能夠使用CString的Format函數。如 CString s; int i = 64; s.Format(」%d」, i); // Format函數的功能很強,值得你研究一下。 void CStrDlg::OnButton1() { CString ss=」1212.12″; int temp=atoi(ss); CString aa; aa.Format(」%d」,temp); AfxMessageBox(」var is 」 + aa); } // CString互轉char* //char * TO cstring CString strtest; char * charpoint; charpoint=」give string a value」; strtest=charpoint; ///cstring TO char * charpoint=strtest.GetBuffer(strtest.GetLength()); // 標準C裏沒有string,char *==char []==string // 能夠用CString.Format(」%s」,char *)這個方法來將char *轉成CString。要把CString轉成char *,用操做符(LPCSTR)CString就能夠了。 CString轉換 char[100] char a[100]; CString str(」aaaaaa」); strncpy(a,(LPCTSTR)str,sizeof(a));
itoa(i,num,10); // i 須要轉換成字符的數字 // num 轉換後保存字符的變量 // 10 轉換數字的基數(進制)10就是說按照10進制轉換數字。還能夠是2,8,16等等你喜歡的進制類型