1 cstring,int,string,char*之間的轉換
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());
1,string -> cstring
cstring.format("%s", string.c_str());
用c_str()確實比data()要好.
2,char -> string
string s(char *);
你的只能初始化,在不是初始化的地方最好還是用assign().
3,cstring -> string
string s(cstring.getbuffer());
getbuffer()後一定要releasebuffer(),否則就沒有釋放緩衝區所佔的空間.
《c++標準函式庫》中說的
有三個函式可以將字串的內容轉換為字元陣列和c—string
1.data(),返回沒有」\0「的字串陣列
2,c_str(),返回有」\0「的字串陣列
3,copy()
cstring互轉int
將字元轉換為整數,可以使
用atoi、_atoi64或atol
。 而將數字轉換為cstring變數,可以使用cstring的format函式。如
cstring s;
int i = 64;
s.format("%d", i)
format函式的功能很強,值得你研究一下。
void cstrdlg::onbutton1()
sart.format("%s",buf);
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));
2 cstring型別的轉換成int
cstring型別的轉換成int
: 將字元轉換為整數,可以使用atoi、_atoi64或atol。
//cstring aaa = "16" ;
//int int_chage = atoi((lpcstr)aaa) ;
而將數字轉換為cstring變數,可以使用cstring的format函式。如
cstring s;
int i = 64;
s.format("%d", i)
format函式的功能很強,值得你研究一下。
如果是使用char陣列,也可以使用sprintf函式。
//cstring ss="1212.12";
//int temp=atoi(ss);
//cstring aa;
"%d",temp);
數字->字串除了用cstring::format,還有formatv、sprintf和不需要借助於afx的itoa
3 char* 在裝int
#include
int atoi(const char *nptr);
long atol(const char *nptr);
long long atoll(const char *nptr);
long long atoq(const char *nptr);
4 cstring,int,string,char*之間的轉換
string aa("aaa");
char *c=aa.c_str();
cannot convert from 'const char *' to 'char *'
const char *c=aa.c_str();
5 cstring,int,string,char*之間的轉換
string.c_str()只能轉換成const char *,
要轉成char *這樣寫:
string mngname;
char t[200]; memset(t,0,200); strcpy(t,mngname.c_str());
VC裡面的main 函式
通過main 函式的引數給程式增加一些處理資訊,可以使程式和使用者實現更多互動式的通訊.如果你的程式需要命令列引數編譯的話,那麼源程式的主函式main 就需要帶引數 也就是所謂的命令列引數。帶有引數的main 函式頭格式為 void main int argc,char argv 或void mai...
列舉裡面的介面的實現
列舉式乙個類,這個類,同樣也有類改由的功能,今天來說說列舉來實現介面。下面還是來看看 吧.首先我們定義乙個介面 介面裡面由兩個抽象方法.如下.public inte ce enuminte ce下滿我們來定義我們的列舉型別的類,分別由三個物件,分別有自己的構造方法.如下.public enum de...
C String類介面的實現
對c string庫部分介面的實現,通過介面間的復用,使個個介面緊密聯絡,更加簡潔。重要介面expand 通過檢測當前物件容量是否滿足要求,對物件進行擴容等操作。此次實現string全部使用的是深拷貝。include include include includeusing namespace st...