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

            色综合久久无码中文字幕| 99久久夜色精品国产网站| 亚洲人成无码www久久久| 久久这里有精品| 久久久久久亚洲AV无码专区 | 久久亚洲欧美日本精品| 久久国产精品久久国产精品| 久久亚洲电影| 国产精品久久久久国产A级| 久久国产免费| 久久ww精品w免费人成| 亚洲国产高清精品线久久| 99久久精品国内| 浪潮AV色综合久久天堂| 久久精品国产精品亚洲| 久久国产精品99精品国产| 伊人久久五月天| 久久国产高清一区二区三区| 国产精品久久久久国产A级| 亚洲欧美国产精品专区久久| 99久久无码一区人妻| 久久久精品人妻一区二区三区蜜桃 | 久久性精品| 国产精品午夜久久| 久久A级毛片免费观看| 精品久久久久久久久免费影院| 99久久精品九九亚洲精品| 99精品国产在热久久| 久久人人爽人人爽人人片av高请| 免费无码国产欧美久久18| 色婷婷久久综合中文久久一本| 一级做a爱片久久毛片| 91精品国产9l久久久久| 99久久婷婷国产综合亚洲| 久久国产精品成人影院| 99久久免费国产精精品| 久久亚洲欧美日本精品| 18岁日韩内射颜射午夜久久成人| 欧美精品一本久久男人的天堂| 九九久久99综合一区二区| 99久久精品免费看国产一区二区三区|