• <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 小王子 閱讀(4837) 評論(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免费| 九九热久久免费视频| 久久亚洲精品国产精品| 国产真实乱对白精彩久久| 蜜臀av性久久久久蜜臀aⅴ麻豆| 国产成人99久久亚洲综合精品| 99久久国产综合精品女同图片| 日韩欧美亚洲综合久久影院d3| 三级三级久久三级久久 | 久久综合丁香激情久久| 综合网日日天干夜夜久久| 中文字幕成人精品久久不卡| 香蕉久久久久久狠狠色| 久久久久久狠狠丁香| 亚洲人成精品久久久久| 婷婷久久五月天| 人妻丰满?V无码久久不卡| 日本精品久久久中文字幕| 国产精品99久久99久久久| 亚洲∧v久久久无码精品| 老男人久久青草av高清| 天天影视色香欲综合久久| 久久精品女人天堂AV麻| 91精品免费久久久久久久久| 久久精品一区二区| 97精品依人久久久大香线蕉97 | 国产精品久久新婚兰兰| 久久久久无码国产精品不卡| 亚洲欧美精品伊人久久| 精品国产一区二区三区久久| 久久国产成人精品麻豆| 成人久久综合网| 中文字幕亚洲综合久久2| 国产日韩久久久精品影院首页|