• <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)  編輯 收藏 引用

            青青草原综合久久大伊人精品| 久久国产精品成人影院| 久久精品国产亚洲Aⅴ香蕉| 久久国产精品视频| 久久精品国产久精国产一老狼| 久久国产色AV免费看| 久久久艹| 久久国产乱子伦精品免费强| 亚洲国产香蕉人人爽成AV片久久 | 久久99国产精品久久久| 久久精品一区二区影院| 久久丫精品国产亚洲av不卡| 久久强奷乱码老熟女网站| 午夜人妻久久久久久久久| 久久久久亚洲精品中文字幕| 国内精品久久国产大陆| 伊人久久大香线蕉av一区| 久久本道综合久久伊人| 欧美日韩中文字幕久久伊人| 精品国产乱码久久久久久人妻 | 国产99久久久国产精品小说| 国产成人综合久久综合| 亚洲综合日韩久久成人AV| 久久久免费观成人影院 | 久久免费视频1| 久久本道久久综合伊人| 久久九九全国免费| 午夜精品久久久久久久| 国产成人精品久久| 亚洲午夜久久久久久久久电影网| 亚洲精品无码久久久久AV麻豆| 四虎国产永久免费久久| 欧美精品一区二区精品久久| 精品久久久久久综合日本| 996久久国产精品线观看| 久久精品国产亚洲av日韩| 久久午夜无码鲁丝片| 国产精品久久99| 热99re久久国超精品首页| 国产午夜精品久久久久九九电影| 国产成人久久精品麻豆一区|