欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
CString, int, string, char*之間的轉換_C語(yǔ)言教程_C++教程_...

CString, int, string, char*之間的轉換

  項目中經(jīng)常用到各種不同的語(yǔ)言的朋友們應該會(huì )比較有這樣的體會(huì ):一種開(kāi)發(fā)語(yǔ)言用了比較長(cháng)的時(shí)間,突然間轉到另外一種語(yǔ)言的話(huà),不管是數據類(lèi)型或者語(yǔ)法結構,多多少少都會(huì )有那么一點(diǎn)不適應。哪怕MFC中的類(lèi)型與標準C++也是一樣的。下面是MFC/C++/C中字符類(lèi)型CString, int, string, char*之間的轉換的說(shuō)明與舉例,經(jīng)常用的東西,相信對于用C/C++的朋友,還是比較有用的。

    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轉std::string

    CString str = dlg.GetPathName(); setlocale(LC_ALL, "chs");

    char *p = new char[256];

    wcstombs( p, str, 256 );

    m_fileName = p;

    1,string -> CString CString.format("%s", string.c_str());用c_str()確實(shí)比data()要好. 2,char -> string

    string s(char *);

    你的只能初始化,在不是初始化的地方最好還是用assign(). 3,CString -> string string s(CString.GetBuffer()); GetBuffer()后一定要ReleaseBuffer(),否則就沒(méi)有釋放緩沖區所占的空間.

    《C++標準函數庫》中說(shuō)的

    有三個(gè)函數可以將字符串的內容轉換為字符數組和C—string

    1.data(),返回沒(méi)有“\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()

    {

    // TODO: Add your control notification handler code here

    CString

    ss="1212.12";

    int temp=atoi(ss);

    CString aa;

    aa.Format("%d",temp);

    AfxMessageBox("var is " + aa);

    }

    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里沒(méi)有string,char *==char []==string

    可以用CString.Format("%s",char *)這個(gè)方法來(lái)將char *轉成CString。要把CString轉成char *,用操作符(LPCSTR)CString就可以了。

    CString轉換char[100]

    char a[100];

    CString str("aaaaaa");

    strncpy(a,(LPCTSTR)str,sizeof(a));

    2 CString類(lèi)型的轉換成int

    CString類(lèi)型的轉換成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;

    //aa.Format("%d",temp);

    數字->字符串除了用CString::Format,還有FormatV、sprintf和不需要借助于A(yíng)fx的itoa

    3 char*在裝int

    #include <stdlib.h>

    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 *這樣寫(xiě):

    string mngName;

    char t[200]; memset(t,0,200); strcpy(t,mngName.c_str());

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
VC中format用法 各種轉換方式 int 轉 CString char* 轉 int
string,CString,char*之間的轉化
string CSting char * 之間的轉換
CString類(lèi)常用方法----Format(),sprintf(),itoa(),ltoa(),ultoa(),atoi(),atol(),atof()
VC 強制類(lèi)型轉換
string和cstring,cstring賦值給char數組
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久