• <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>
            隨筆 - 51, 文章 - 1, 評論 - 41, 引用 - 0
            數(shù)據(jù)加載中……

            簡易統(tǒng)計程序運行時間的程序

                     有時需要計算程序運行時間,這有許多方法,比如可以在調(diào)用函數(shù)前后記錄時間,相減就可以得到運行時間。這需要在程序加入記錄代碼。也有方法不需要添加代碼也能統(tǒng)計。下面的程序是一個簡單的計算運行時間的工具,當然和linux下的time無法相比。
            /* 文件名:running.c
             
            * 計算程序運行時間 
             
            * author: lemene
             
            * time2008-01-20
             
            */

            #include 
            <windows.h>
            #include 
            <stdio.h>
            #include 
            <getopt.h>

            extern char 
            *optarg; 
            void usage()
            {
                printf(
            "這是一個簡易的計算程序運行時間的工具\n");
                printf(
            "usage: CodeCounter [-hEps] [string|n]\n");
                printf(
            "-h          顯示幫助信息\n");
                printf(
            "-E string   需要統(tǒng)計程序的路徑\n");
                printf(
            "-p string   程序運行的參數(shù)\n");
                printf(
            "-s          是否顯示程序運行窗口\n");

            }

            void running(
            const char* f, const char* p, int show)
            {
                SHELLEXECUTEINFO   ExeInfo;   
                ZeroMemory(
            &ExeInfo,sizeof(SHELLEXECUTEINFO));   
                ExeInfo.cbSize   
            =   sizeof(SHELLEXECUTEINFO);   
                ExeInfo.lpFile   
            =   f;   
                ExeInfo.fMask   
            =   SEE_MASK_NOCLOSEPROCESS   ;   
                ExeInfo.nShow   
            =   show ? SW_SHOWNORMAL : SW_HIDE;
                ExeInfo.lpParameters 
            = p;
                ShellExecuteEx(
            &ExeInfo);   
                WaitForSingleObject(ExeInfo.hProcess,INFINITE);       
            }

            void err_msg()
            {
                printf(
            "參數(shù)錯誤\n");
                printf(
            "running -h 查看幫助信息\n");
            }

            int main(int argc,char **argv)
            {
                char file[MAX_PATH] 
            = {0};
                char param[
            512];
                
            int opt;
                DWORD start;
                
            int show = 0;
                
            while((opt=getopt(argc,argv,"hE:p:s"))!=-1)
                {
                    switch (opt)
                    {
                    
            case 'h':
                        usage();
                        return 
            0;
                    
            case 'p':
                        strcpy(param, optarg);
                        break;
                    
            case 'E':
                        strcpy(file, optarg);
                        break;
                    
            case 's':
                        show = 1;
                        break;
                    default:
                        err_msg();
                        return 
            0;
                    }
                }
                
            if (file[0== 0)
                {
                    err_msg();
                    return 
            0;
                }
                start 
            = GetTickCount();
                running(file, param, show);
                printf(
            "running time: %dms\n", GetTickCount()-start);
                
                return 
            1;
            }
            編譯:gcc -o running.exe running.c -O
            測試:running -E CodeCounter.py -p "-d d:\dev-cpp -l -1"
            輸出:running time: 12328ms
            (注:CodeCounter.py 程序見《Python寫的簡易代碼統(tǒng)計工具(2)》


            posted on 2008-03-17 16:22 lemene 閱讀(2221) 評論(3)  編輯 收藏 引用

            評論

            # re: 簡易統(tǒng)計程序運行時間的程序  回復  更多評論   

            謝謝!
            2009-08-13 16:23 | 千張

            # re: 簡易統(tǒng)計程序運行時間的程序  回復  更多評論   

            不好意思 我是菜鳥 請幫忙解釋如何使用呀
            2009-12-12 11:27 | 000

            # re: 簡易統(tǒng)計程序運行時間的程序[未登錄]  回復  更多評論   

            以這個段代碼為例:
            running -E CodeCounter.py -p "-d d:\dev-cpp -l -1"
            它測試程序CodeCounter.py -d d:\dev-cpp -l -1的運行時間。
            CodeCounter.py 是被測程序,"-d d:\dev-cpp -l -1"是被側程序的參數(shù)。
            2009-12-14 21:54 | lemene
            久久久久亚洲AV无码专区首JN | 亚洲欧洲日产国码无码久久99| 久久久久久久久久久精品尤物| 国产精品99精品久久免费| 国产日韩久久久精品影院首页| 无码人妻少妇久久中文字幕 | 2021国产精品午夜久久| 精品无码久久久久久尤物| 久久国产V一级毛多内射| 精品久久久久中文字幕日本| 青青草原综合久久大伊人导航| 久久久久亚洲AV无码网站| 久久一区二区三区免费| 国产福利电影一区二区三区久久老子无码午夜伦不 | 情人伊人久久综合亚洲| 久久久久久久波多野结衣高潮| 久久免费视频观看| 亚洲国产精品无码成人片久久| 久久夜色撩人精品国产小说| 一本色道久久88加勒比—综合| 亚洲国产精品无码久久98| 国产一区二区久久久| 久久久久九九精品影院| 狠狠人妻久久久久久综合蜜桃| 国产亚洲欧美成人久久片| 久久精品欧美日韩精品| 久久综合久久自在自线精品自 | 久久强奷乱码老熟女网站| 99久久国产综合精品成人影院| 国产亚洲欧美精品久久久 | 久久免费视频一区| 久久久久久国产a免费观看不卡| Xx性欧美肥妇精品久久久久久 | 久久精品九九亚洲精品天堂| 精品久久久久中文字幕日本| 久久精品国产亚洲av影院| 老男人久久青草av高清| 伊人久久大香线蕉亚洲| 精品久久久久久无码专区| 狠狠色丁香久久婷婷综| 国内精品免费久久影院|