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

            ▲1、C語言標準庫函數atoi()等。

            函數名: atoi
            功 能: 把字符串轉換成整型數
            用 法: int atoi(const char *nptr);
            程序例:
            #include <stdlib.h>
            int main(void)
            {
            int n;
            char *str = "435";
            n = atoi(str);
            printf("string = %s integer = %d\n", str, n);
            return 0;
            }

            其他相關函數——

            函數名: atof
            功 能: 把字符串轉換成浮點數
            用 法: double atof(const char *nptr);
            程序例:
            #include <stdlib.h>
            int main(void)
            {
            float f;
            char *str = "12345.67";
            f = atof(str);
            printf("string = %s float = %f\n", str, f);
            return 0;
            }

            函數名: atol
            功 能: 把字符串轉換成長整型數
            用 法: long atol(const char *nptr);
            程序例:
            #include <stdlib.h>
            int main(void)
            {
            long l;
            char *str = "98765432";
            l = atol(lstr);
            printf("string = %s integer = %ld\n", str, l);
            return(0);
            }

            ▲2、sprintf與Format構造字符串——

                sprintf和printf都是C的產物,用法幾乎一樣,只是前者打印到字符串,后者直接在命令行上輸出。
                int sprintf( char *buffer, const char *format [, argument] … );
                除了前兩個參數類型固定外,后面可以接任意多個參數。而它的精華,顯然就在第二個參數:格式化字符串(想想printf吧,一樣的)。例:
            #include <iostream>
            int main()
            {
                double a(3112);
                char s1[10],s2[10];
                sprintf(s1,"%d\n",(int)a);
                sprintf(s2,"$%.2lf",a);
                std::cout<<s1<<s2<<std::endl;
            }

                在C++里,也可用Format(CString) :
            /*VS2005中,項目/屬性/配置屬性里字符集設置為未配置*/
            #include <iostream>
            #define _AFXDLL
            #include <afx.h>
            int main()
            {
                double a(32);
                CString s;
                s.Format("$%.2lf",a);
                std::cout<<s<<std::endl;
            }

            ▲3、字符串流stringstream提供的轉換和/或格式化。

            #include <iostream>
            #include <vector>
            #include <string>
            #include <sstream>
            using namespace std;
            int main()
            {
                int num(435);
                string s;
                ostringstream mystream;
                mystream<<num<<"\n";
                /*創建一個名為mystream的ostringstream類型空對象,
            并將指定的內容插入該對象。此時mystream的內容是以下字符:
            435\n*/
                s=mystream.str();
                cout<<s;
            }

            #include <iostream>
            #include <vector>
            #include <string>
            #include <sstream>
            using namespace std;
            int main()
            {
                string s("435");
                int num;
                istringstream mystream(s);
                mystream>>num;/*num=435*/
                cout<<num<<endl;
            }

            ▲4、自己寫函數。

            /*串到數,實參如("435",&number)*/
            void getnumber_from_string(char nums[],int *p)
            {
                int i,k=strlen(nums);
                for(i=0,(*p)=0;i<k;++i)
                (*p)+=pow_10(k-i-1)*(*(nums+i)-48);
            }
            int pow_10(int k) /*10的k次方*/
            {
                return (k==0?1:10*pow_10(k-1));
            }

            ▲5、想沒到/~!親想到沒?望補充>>>>

            Posted on 2007-07-23 22:50 小王子 閱讀(4853) 評論(5)  編輯 收藏 引用 所屬分類: 分類1:C++文章

            Feedback

            # re: ★(原創)C/C++字符串和數字互換方案收集★  回復  更多評論   

            2007-07-24 00:34 by 隨風而過

            # re: ★(原創)C/C++字符串和數字互換方案收集★[未登錄]  回復  更多評論   

            2007-07-24 08:39 by 漂舟
            樓主收集的方法還真不少,
            偶補充一個,strtol, strtoul, strtod, 這一系列標準庫函數

            # re: ★(原創)C/C++字符串和數字互換方案收集★  回復  更多評論   

            2007-07-24 09:40 by nickey
            boost::lexical_cast

            # re: ★(原創)C/C++字符串和數字互換方案收集★  回復  更多評論   

            2007-07-24 09:54 by pass86
            強烈推薦boost::lexical_cast
            SO EASY.

            # re: ★(原創)C/C++字符串和數字互換方案收集★[未登錄]  回復  更多評論   

            2008-09-06 03:25 by Robert
            Could you write down:

            char* itoa(int n, char* buf)
            亚洲&#228;v永久无码精品天堂久久 | 国产午夜精品理论片久久| 日本三级久久网| 午夜精品久久久内射近拍高清 | 亚洲国产另类久久久精品小说 | 久久丫精品国产亚洲av| 九九久久精品国产| 伊人久久大香线蕉综合Av | 久久精品亚洲男人的天堂| 国产精品美女久久福利网站| 精品无码久久久久国产| 亚洲一区精品伊人久久伊人| aaa级精品久久久国产片| 精品久久久久久无码不卡| 国产亚州精品女人久久久久久 | 91精品免费久久久久久久久| 狠狠色婷婷久久一区二区| 久久综合狠狠综合久久97色| 精品一区二区久久| 99久久久精品免费观看国产| 亚洲女久久久噜噜噜熟女| 欧美亚洲国产精品久久| 久久激情五月丁香伊人| 天天久久狠狠色综合| 久久夜色精品国产噜噜麻豆| 亚洲午夜久久久久妓女影院| 狠狠色丁香久久婷婷综合_中| 久久亚洲中文字幕精品一区| 精品无码久久久久久国产| 青青青国产精品国产精品久久久久| 国产成年无码久久久久毛片 | 久久国产成人| 国产精品九九久久精品女同亚洲欧美日韩综合区 | 久久综合狠狠综合久久综合88| 国产精品久久久久久久app| 久久亚洲国产成人影院网站| 少妇被又大又粗又爽毛片久久黑人 | 久久婷婷国产剧情内射白浆| 精品国产青草久久久久福利| 久久无码人妻一区二区三区| 久久精品国产第一区二区三区 |