• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            幽幽
             
            posts - 51,  comments - 28,  trackbacks - 0

            #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());

            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、char*、char[100]之間的轉換- -

            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()
            {
            // 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里沒有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));


            posted on 2008-06-14 05:11 幽幽 閱讀(45754) 評論(4)  編輯 收藏 引用 所屬分類: 雜集

            FeedBack:
            # re: 【轉】C++ int,char,string,CString類型轉換(整理總結)
            2009-05-27 14:55 | 黑鼠
            呵呵,挺好,
            好像有這么一種方法

            CString csTemp; //………………
            CT2CA caTemp(csTemp);
            string strTemp(caTemp);
            strTemp………………

            搞定  回復  更多評論
              
            # re: 【轉】C++ int,char,string,CString類型轉換(整理總結)
            2009-08-08 11:37 | lxm zqs
            好像不行啊,我在VS2008里面用的,
            ///char * TO cstring
            CString strtest;
            char * charpoint;
            charpoint=”give string a value”;
            strtest=charpoint;

            這個不行的。請你再看看  回復  更多評論
              
            # re: 【轉】C++ int,char,string,CString類型轉換(整理總結)
            2009-10-16 17:26 | hengai
            @lxm zqs
            應該是UNICODE的原因吧。在VS2005中默認的就是UNICODE,VS2008應該也一樣。  回復  更多評論
              
            # re: 【轉】C++ int,char,string,CString類型轉換(整理總結)
            2010-02-07 17:58 | 游客也
            看了博主的文章,看到一個地方相當疑惑:
            1.data(),返回沒有”\0“的字符串數組
            2,c_str(),返回有”\0“的字符串數組
            ====================================
            我在vs03(呵呵,很老了),查看了string 的 data()函數的實現
            const _Elem *data() const
            { // return pointer to nonmutable array
            return (c_str());
            }

            很明顯是直接調用c_str()函數,從代碼理解,那么data()和c_str()是一樣效果的
              回復  更多評論
              

            <2025年5月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            常用鏈接

            留言簿(6)

            隨筆分類(35)

            隨筆檔案(51)

            文章分類(3)

            文章檔案(3)

            相冊

            我的鏈接

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            少妇被又大又粗又爽毛片久久黑人 | 久久亚洲AV成人无码| 午夜福利91久久福利| 久久精品国产乱子伦| 国产亚洲美女精品久久久久狼| 久久国产精品免费一区| 午夜精品久久久久久久| Xx性欧美肥妇精品久久久久久 | 精品久久久久久| 中文精品99久久国产 | 国产激情久久久久久熟女老人| 国产69精品久久久久777| 国产精品一区二区久久精品涩爱 | 久久精品免费全国观看国产| 久久精品国产亚洲精品2020| 亚洲精品tv久久久久| 国产成人精品久久一区二区三区| 伊人色综合久久天天人守人婷 | 93精91精品国产综合久久香蕉| 久久精品aⅴ无码中文字字幕不卡| 99久久这里只有精品| 伊人久久大香线蕉综合Av| 久久噜噜久久久精品66| 成人精品一区二区久久| 精品久久久久久中文字幕| 熟妇人妻久久中文字幕| 国产亚洲美女精品久久久2020| 久久久久噜噜噜亚洲熟女综合| 88久久精品无码一区二区毛片 | 久久成人国产精品| 久久精品视频一| 亚洲国产日韩综合久久精品| 开心久久婷婷综合中文字幕| 国产99久久久国产精免费| 国产精品99久久精品| 97久久香蕉国产线看观看| 精品国产乱码久久久久久郑州公司| 丁香色欲久久久久久综合网| 2021最新久久久视精品爱| 久久久久亚洲av成人网人人软件| 国产99久久久国产精品小说|