• <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 悟山 閱讀(3000) 評論(0)  編輯 收藏 引用

            亚州日韩精品专区久久久| 色综合久久久久无码专区| 美女写真久久影院| 亚洲国产精品久久66| 久久精品国产99国产电影网| 999久久久免费精品国产| 欧美伊香蕉久久综合类网站| 久久强奷乱码老熟女网站| 伊人久久大香线焦AV综合影院| 国产精品久久久久久吹潮| 久久国产美女免费观看精品 | 久久精品无码免费不卡| 国内精品久久久久影院亚洲| 97久久久精品综合88久久| 久久久久成人精品无码| 久久99国产乱子伦精品免费| 久久久精品国产亚洲成人满18免费网站 | 91性高湖久久久久| 久久亚洲日韩精品一区二区三区| 欧洲国产伦久久久久久久| 国产精品久久久久久影院| 亚洲国产精品无码久久SM| 久久婷婷色综合一区二区| 亚洲伊人久久大香线蕉苏妲己| 久久SE精品一区二区| 久久乐国产综合亚洲精品| 久久亚洲中文字幕精品一区| 国产精品激情综合久久| 亚洲国产成人久久综合一| 热re99久久6国产精品免费| 亚洲人成电影网站久久| 午夜精品久久久久久久无码| 久久久久久噜噜精品免费直播| 99国产精品久久| 国内精品久久久久影院日本| 无码久久精品国产亚洲Av影片 | 久久亚洲私人国产精品| 久久久久久久久久久| 久久这里都是精品| 久久天天躁狠狠躁夜夜2020一| 亚洲精品无码久久久久AV麻豆|