• <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>

            我生如山

            在Win32 Window應用程序中啟用Console輸出

            在某些時候,我們可能需要在Win32窗口應用程序中打開控制臺窗口,打印一些消息,或者作為當前程序的另外一個人機交互界面,或者為了幫助調試程序。為了達到這種效果,需要了解函數AllocConsole和C-Runtime的freopen函數。
            AllocConsole函數會為當前的窗口程序申請一個Console窗口。這是MSDN上對AllocConsole的介紹:

            AllocConsole

             

            The AllocConsole function allocates a new console for the calling process.

            BOOL AllocConsole(void);
            函數調用成功,返回非零值,調用不成功則返回0.

            在為當前窗口程序申請到console后,我們需要調用C-Runtime的freopen函數將標準輸出(stdout)重定位到新申請的console。
            freopen的原型如下:
            FILE *freopen( 
               
            const char *path,
               
            const char *mode,
               FILE 
            *stream 
            );
            我們調用的時候是這么著傳入參數的:
            freopen("CONOUT$","w",stdout);
            其中"CONOUT$"是指代當前console的特殊字符串,"w"表明以written模式打開這個console,stdout指代的是系統的標準輸出設備。


            下面是整個的代碼:

            if(AllocConsole())
             
            {
              freopen(
            "CONOUT$","w",stdout);
              printf(
            "hello, world!");
             }

            posted on 2009-05-17 17:03 悟山 閱讀(3018) 評論(0)  編輯 收藏 引用

            精品久久久久久成人AV| 久久免费国产精品| 久久精品国产久精国产| 97久久精品午夜一区二区| 久久亚洲国产中v天仙www| 久久久精品视频免费观看| 久久人人爽人人爽人人片AV高清| 免费精品久久天干天干| 国产精品一区二区久久不卡| 国产亚洲美女精品久久久 | 99久久免费国产精品| 久久中文字幕人妻丝袜| 久久99精品国产麻豆不卡| 亚洲国产精品18久久久久久| 999久久久国产精品| 蜜臀久久99精品久久久久久小说| 色综合合久久天天给综看| 天天躁日日躁狠狠久久| 久久久国产视频| 久久亚洲国产精品五月天婷| 久久精品国产精品国产精品污| 久久久无码精品亚洲日韩蜜臀浪潮 | 精品久久久久久无码中文野结衣| AV狠狠色丁香婷婷综合久久 | 国产亚洲婷婷香蕉久久精品| 亚洲国产精品无码久久久不卡 | 久久久午夜精品福利内容| 国产精品福利一区二区久久| 精品国产一区二区三区久久久狼| 亚洲午夜久久久| 免费精品久久天干天干| 久久久久久久97| 国产99久久久久久免费看| 亚洲国产精品嫩草影院久久| 久久久亚洲欧洲日产国码aⅴ | 日本久久中文字幕| 91精品国产高清久久久久久io| 91久久国产视频| 日韩精品久久久久久免费| 久久青青草原精品国产不卡| 久久久久久久久久久久久久|