• <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>
            aurain
            技術文摘
            posts - 137,  comments - 268,  trackbacks - 0
            在傳輸文件的時候,為了顯示傳輸的進度,需要在一行不停的變換數字顯示,找了些資料,發現原來可以很簡單的實現,先記錄下來

            #include <unistd.h>
            #include <iostream>
            using namespace std;
             
            int main(int argc, char * argv[])
            {
                    for (int i = 0; i < 10; ++i)
                    {
                            cout << "\rnow:" << i;
                            cout.flush();
                            sleep(1);
                    }
                    return 0;
            }

            說明:
            1. 主要是\r的使用,在輸出時,遇到\r后,光標被重置于行的開始處,覆蓋掉原來的輸出
            2. 刷新緩沖區
            posted on 2008-12-05 11:28 閱讀(3550) 評論(6)  編輯 收藏 引用 所屬分類: c/c++基礎知識

            FeedBack:
            # re: linux在終端模式顯示進度
            2008-12-05 14:27 | likev@qq.com
            如果進度數字越來越小呢? 從100到0輸出呢,僅僅覆蓋就會出問題了。 100,990,980,……,100

            最好的辦法是先從一行空格覆蓋(cout<<"\r "),再\r輸出。  回復  更多評論
              
            # re: linux在終端模式顯示進度
            2008-12-05 15:05 |
            @likev@qq.com
            提得很針對性,我考慮欠缺了。  回復  更多評論
              
            # re: linux在終端模式顯示進度
            2008-12-08 09:42 | zuhd
            你不會只為了實現這個功能,讓主線程sleep(1)吧。。。。。  回復  更多評論
              
            # re: linux在終端模式顯示進度
            2008-12-08 13:51 | heweitykc
            如果是多行怎么處理啊?  回復  更多評論
              
            # re: linux在終端模式顯示進度
            2008-12-09 10:10 |
            @zuhd
            這個只是用來模擬進度的了,sleep是為了1秒顯示一次  回復  更多評論
              
            # re: linux在終端模式顯示進度
            2008-12-09 10:19 |
            @heweitykc
            多行的好像不能這么處理(我還沒找到方法),除非用定位的方式,蔽日dos下的gotoxy,linux下可以這樣處理
            //清屏
            static void clrscr()
            {
            printf("\033[2J");
            }
            //光標定位
            static void gotoxy(int x, int y)
            {
            char essq[100]={0};
            sprintf(essq, "\033[%d;%df", y, x);
            printf("%s", essq);
            }  回復  更多評論
              

            <2009年4月>
            2930311234
            567891011
            12131415161718
            19202122232425
            262728293012
            3456789

            常用鏈接

            留言簿(17)

            隨筆分類(138)

            隨筆檔案(137)

            網絡開發

            最新隨筆

            搜索

            •  

            積分與排名

            • 積分 - 500431
            • 排名 - 37

            最新隨筆

            最新評論

            閱讀排行榜

            評論排行榜

            久久AV高清无码| 亚洲va久久久久| 99久久www免费人成精品| 94久久国产乱子伦精品免费| 天堂无码久久综合东京热| 午夜精品久久久久久久久| 国产成人无码精品久久久免费 | 久久99精品国产麻豆| 亚洲综合婷婷久久| 久久综合九色综合网站| 久久国产V一级毛多内射| 久久亚洲中文字幕精品有坂深雪 | 69久久精品无码一区二区| 日日狠狠久久偷偷色综合0| 色综合久久综合网观看| 99久久无色码中文字幕人妻| 久久久人妻精品无码一区 | 伊人久久综合成人网| 久久精品国产99国产精品| 国产V亚洲V天堂无码久久久| 国产精品久久久久久五月尺| 久久精品二区| 久久精品国产99国产精品| 久久91精品综合国产首页| 999久久久无码国产精品| 无码精品久久久久久人妻中字 | 国产精品久久久久久久人人看| 激情久久久久久久久久| 久久青青草原国产精品免费| 久久被窝电影亚洲爽爽爽| 久久超碰97人人做人人爱| 亚洲午夜久久久影院伊人| 亚洲色欲久久久综合网| 久久久久久精品无码人妻| 怡红院日本一道日本久久 | 国产精品热久久无码av| 久久久国产精品网站| 青青国产成人久久91网| 亚洲精品高清国产一久久| www亚洲欲色成人久久精品| 久久久久99精品成人片|