• <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>
            隨筆 - 15  文章 - 5  trackbacks - 0
            <2011年9月>
            28293031123
            45678910
            11121314151617
            18192021222324
            2526272829301
            2345678

            常用鏈接

            留言簿

            隨筆分類

            隨筆檔案

            文章分類

            文章檔案

            搜索

            •  

            最新評論

            • 1.?re: 2011年9月26日[未登錄]
            • 我不是吹噓,為什么1,2,3,4,5,7,9,10,11,12我都知道一點????
              看來我估計可以過電面啊~_~
            • --ZJ
            • 2.?re: 2011年9月26日
            • 有計劃的人生會很精彩。。
            • --Cheap glueless lace front wigs
            • 3.?re: 2011年9月26日
            • (14)舉個例子說明你學習能力比較強,
              牛!

              那個騰訊就是做QQ的吧,QQ里面還內嵌個木馬,有事沒事的掃描下用戶磁盤,唉,公司技術就這鳥水平,還對應聘者提那么多要求。
            • --Chipset
            • 4.?re: 2011年9月26日
            • 問這么多問題,要求不低啊,呵呵,要回答好需要很扎實的基礎
            • --LoveBeyond
            • 5.?re: 2011年9月26日
            • 這些問題我十有八九答不上來...慚愧啊
            • --pezy

            閱讀排行榜

            評論排行榜

            首先我們在MSDN看一下printf的原型和sprintf的原型

            int printf( const char *format [, argument]... );

            int sprintf( char *buffer, const char *format [, argument] ... );
            從定義來看兩者的功能其實很相似的。
            如果你接觸的控制臺的程序較多的話,見到printf的比較多,printf函數打印結果到屏幕上,而sprintf函數可以完成其他數據類型轉換為字符串。
            從以下幾點來說明一下
            (1)函數的中前兩個參數是固定外,可選參數是任意個,buffer是存放字符串指針或者數組名字,fromat是格式化字符串,只要是printf使用的格式化字符串,在sprintf都可以使用,格式化字符串是該函數的精髓。
            (2)首先可以把一個整型數據格式化為字符串。比如:char str[20];int i_arg = 12345;sprintf(buf,"%-6d",i_arg);
            (3)看一個浮點類型的例子。比如:char str[20];double d_arg = 3.1415926;sprintf(str,"%6.2f",d_arg);
            可以控制精度
            (4)連接兩個字符串,也可以將多個字符串連接起來,%m.n在字符串的輸出中,m表示寬度,字符串共占的列數;n表示實際的字符數。%m.n在浮點數中,m也表示寬度,n表示小數的位數。比如:char dest[256];char src1[] = {'a','b','c','d','e'};
            char src2[] ={'1','2','3','4'};sprintf(dest,"%.5s%.4s",src1,src2);也可以動態的截取字符串的某一些字符,char dest[256];char src1[] = {'a','b','c','d','e'};
            char src2[] ={'1','2','3','4'};sprintf(dest,"%.*s%.*s",2,src1,3,src2);也可以竊取浮點類型的有效位sprintf(str,"%*.*",10,4,d_arg);
            補充一點,sprintf的返回值就是字符串的字符的個數,也就是strlen(str)的結果,
            也可以打印某個參數的地址
            int i=2;
            sprintf(str,"%0*x",sizeof(void *),&i);或者用sprintf(str,"%p",&i);

            此外這些都是都是多字節類型(ANSI)的函數,而對于unicode類型的應該使用的相似的函數:

            int wprintf( const wchar_t *format [, argument]... );

             

            int swprintf( wchar_t *buffer, const wchar_t *format [, argument] ... );

            用法和上面的很相似的,就是類型不同而已,
            對于printf和sprintf該函數的包含在<stdio.h>頭文件
            而sprintf和wprintf函數包含在<stdio.h>或者<wchar.h>頭文件中。

            posted on 2011-09-24 22:14 mengkai 閱讀(4051) 評論(0)  編輯 收藏 引用
            四虎国产精品成人免费久久| 久久人人爽人人精品视频| 一本色道久久HEZYO无码| 久久婷婷人人澡人人爽人人爱| 99久久精品免费看国产一区二区三区| 亚洲精品乱码久久久久久中文字幕 | 青青青青久久精品国产h久久精品五福影院1421| 久久久WWW成人免费毛片| 亚洲精品无码久久久久去q| AAA级久久久精品无码区| 精品久久久无码人妻中文字幕| 国内精品伊人久久久久av一坑| 色婷婷噜噜久久国产精品12p| av午夜福利一片免费看久久 | 久久www免费人成看片| 精品多毛少妇人妻AV免费久久| 中文国产成人精品久久不卡| 久久久久一级精品亚洲国产成人综合AV区| 久久亚洲AV成人无码软件| 久久青青草原精品国产不卡| 99国产精品久久| 久久综合给合久久狠狠狠97色 | 久久青青草原精品国产不卡| 91久久精品国产91性色也| 久久国产高潮流白浆免费观看| 久久久久亚洲AV无码专区首JN | 久久国产热精品波多野结衣AV| 久久强奷乱码老熟女网站| 亚洲欧洲精品成人久久奇米网| 狠狠精品干练久久久无码中文字幕| 麻豆成人久久精品二区三区免费| 久久精品中文字幕一区| 久久午夜夜伦鲁鲁片免费无码影视 | 国产香蕉97碰碰久久人人| 99久久无码一区人妻| 久久精品国产一区二区| 国产一区二区精品久久凹凸 | 伊人久久大香线蕉影院95| 欧美久久综合性欧美| 精品国产婷婷久久久| 亚洲午夜无码AV毛片久久|