• <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)
            久久精品视频网| 亚洲午夜久久影院| 久久久久久亚洲Av无码精品专口| 亚洲精品无码久久久久| 国产精品久久久久久搜索| 久久久久久国产精品免费免费| 久久久久久久精品妇女99| 国内精品伊人久久久久| 久久综合亚洲色HEZYO社区| 国产精品九九久久精品女同亚洲欧美日韩综合区 | 久久99国产精品久久| 亚洲Av无码国产情品久久| 久久99国产综合精品免费| 亚洲欧洲精品成人久久奇米网| 久久91精品久久91综合| 久久中文字幕人妻熟av女| 国产亚洲精久久久久久无码AV| 亚洲AV无码久久精品狠狠爱浪潮 | 久久久久这里只有精品| 999久久久免费精品国产| 久久精品国产亚洲av麻豆图片 | 老司机午夜网站国内精品久久久久久久久| 日日噜噜夜夜狠狠久久丁香五月 | 欧美精品一区二区精品久久| 中文字幕久久精品无码| 久久久这里有精品| 色播久久人人爽人人爽人人片aV | 国内精品久久久久久野外| 久久久久久无码Av成人影院| 囯产精品久久久久久久久蜜桃 | 情人伊人久久综合亚洲| 国产精品美女久久久久网| AV无码久久久久不卡蜜桃| 九九久久自然熟的香蕉图片| 日韩乱码人妻无码中文字幕久久| 亚洲欧美伊人久久综合一区二区| 狠狠色综合网站久久久久久久高清| 久久成人国产精品免费软件| 色综合久久久久无码专区| 欧美精品久久久久久久自慰| 精品国际久久久久999波多野|