• <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>

            C++優雅之旅

            探索C++

              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              15 隨筆 :: 0 文章 :: 20 評論 :: 0 Trackbacks

            以下是常用的幾種類型互相之間的轉換
            string 轉 int
            ..............................
            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);
            ...................................................................
            int 轉 string
            可以使用stringstream類(需要包含<sstream>頭文件)
            int main()
            {
               stringstream ss;
               int i = 100;
               string str;
               ss >> i;
               ss << str; //這時str中就是字符串"100".
               retturn 0;
            }

            .............................
            char* 轉 string 
            string s(char *); 
            你的只能初始化,在不是初始化的地方最好還是用assign().
            ..................................................................
            int 轉 char *
            在stdlib.h中有個函數itoa()
            itoa的用法:
            itoa(i,num,10);
            i 需要轉換成字符的數字
            num 轉換后保存字符的變量
            10 轉換數字的基數(進制)10就是說按照10進制轉換數字。
            還可以是2,8,16等等你喜歡的進制類型
            原形:char *itoa(int value, char* string, int radix);

            實例:
            #include "stdlib.h"
            #include "stdio.h"
            main()
            {
                int i=1234;
                char s[5];
                itoa(i,s,10);
                printf("%s",s);
                getchar();
            }
            ..........................................
            string 轉 char * 
            char *p = string.c_str(); 

            string aa("aaa");
            char *c=aa.c_str();
            string mngName;
            char t[200];
            memset(t,0,200);
            strcpy(t,mngName.c_str());
            ..........................................

            posted on 2008-04-17 15:22 林公子 閱讀(49362) 評論(5)  編輯 收藏 引用 所屬分類: C++/CLI

            評論

            # re: [轉]string, char*, int類型轉換 2009-01-29 16:51 ChriHan
            string str;
            ss >> i;
            ss << str; //這時str中就是字符串"100".

            這個部分好像不對,
            應該是
            ss << i; 這時str中就是字符串"100".
            可以通過ss.str()提取ss中的內容  回復  更多評論
              

            # re: [轉]string, char*, int類型轉換 2009-02-02 13:57 erosnick
            @ChriHan
            謝謝Chrihan的更正,以后得注意點, 避免bug:)  回復  更多評論
              

            # re: [轉]string, char*, int類型轉換 2009-07-06 13:17 Robert.Hu
            在"string 轉 char * "中

            "char *c=aa.c_str();"
            錯了吧,c_str()返回的是const char* 而 const char* 不能轉換成char*  回復  更多評論
              

            # re: [轉]string, char*, int類型轉換[未登錄] 2011-08-27 18:13 camel
            @ChriHan
            應該是寫反了
            ss << i;
            ss >> str;

            就可以了  回復  更多評論
              

            # re: [轉]string, char*, int類型轉換 2013-01-05 16:10 reuben
            更改后的對  回復  更多評論
              

            亚洲国产精品一区二区三区久久| 久久精品国产久精国产思思| 久久综合久久伊人| 久久人人添人人爽添人人片牛牛| 一本久久a久久精品vr综合| 91久久婷婷国产综合精品青草 | 久久久无码精品亚洲日韩按摩| 乱亲女H秽乱长久久久| 99久久精品免费| 亚洲午夜久久久久久噜噜噜| 国产精品免费久久久久久久久| 无码任你躁久久久久久老妇App| 69久久夜色精品国产69| 亚洲成av人片不卡无码久久| 97久久精品无码一区二区| 一本色道久久综合| 国产成人精品久久综合| 99久久99这里只有免费费精品| 久久精品视屏| 国产呻吟久久久久久久92| 久久婷婷五月综合国产尤物app| 亚洲国产精品无码久久久久久曰 | 色综合久久久久综合99| 久久久久综合网久久| 久久久亚洲欧洲日产国码aⅴ| 久久无码AV一区二区三区| 91精品国产91久久久久久青草| 国产精品无码久久久久久| 久久影院综合精品| 亚洲∧v久久久无码精品| 区亚洲欧美一级久久精品亚洲精品成人网久久久久 | 久久亚洲AV无码精品色午夜| 久久五月精品中文字幕| 国产精品嫩草影院久久| 99久久99久久精品国产片果冻 | 亚洲综合伊人久久综合| 国内精品久久久久影院老司| 中文字幕无码av激情不卡久久| 色婷婷久久久SWAG精品| 久久只有这里有精品4| 99久久99久久精品国产片果冻|