user-0 提问: 【求助】TC编译环境下window函数如何突破25行80列限制

回复:
user: user-1
content: console屏幕处理例子程序。终端窗口屏幕处理相关API使用例子。来自MSVC20\SAMPLES\win32\console\ http://download.csdn.net/detail/zhao4zhong1/3461309

user: user-1
content: textmode                         <CONIO.H>  Changes screen mode (in text mode)   Declaration:  void textmode(int newmode);   Remarks: textmode selects a specific text mode.  You can give the text mode (the argument newmode) by using a symbolic constant from the enumeration type text_modes (defined in CONIO.H).  If you use these constants, you must include CONIO.H.  When textmode is called, the current window is reset to the entire screen, and the current text attributes are reset to normal, corresponding to a call to normvideo.  Specifying LASTMODE to textmode causes the most recently selected text mode to be reselected.  textmode should be used only when the screen is in text mode (presumably to change to a different text mode).  When the screen is in graphics mode, use restorecrtmode to escape temporarily to text mode.   Return Value:  None   See Also:   gettextinfo   window   Example:   #include <conio.h>   int main(void)  {     textmode(BW40);     cprintf("ABC");     getch();      textmode(C40);     cprintf("ABC");     getch();      textmode(BW80);     cprintf("ABC");     getch();      textmode(C80);     cprintf("ABC");     getch();      textmode(MONO);     cprintf("ABC");     getch();      return 0;  }   text_modes                        <CONIO.H>  Enum: Standard video modes   Constant |Value| Text Mode  LASTMODE | -1  | Previous text mode  BW40     |  0  | Black and white       40 columns  C40      |  1  | Color                 40 columns  BW80     |  2  | Black and white       80 columns  C80      |  3  | Color                 80 columns  MONO     |  7  | Monochrome            80 columns  C4350    | 64  | EGA and               43-line           |     | VGA                   50-line

user: user-1
content: 搜“Native Application 开发详解”

user: user-0
content: 好的，我试试用VGA。VGA之前也搜索过做过，主要没找到实例，所以学它的进展缓慢。

user: user-2
content: http://www.columbia.edu/~em36/wpdos/videomodes.txt 这个也许TC本身做不到了，要改VGA的设置，也许？

user: user-0
content: 用TC的原因在于写DOS界面的时候比较方便，可以加菜单窗口颜色等等。VC可以有这些功能吗？我要做的是类似一个叫spfdisk的tool，多数情况下是要在开机进F9进DOS界面执行的。

user: user-2
content: http://www.devtrends.com/index.php/linux-console-modes-80x25-really/ 还是自行搜搜vga相关的知识吧，搜索也是种学习。

user: user-1
content: 看七楼。TC换VC

user: user-0
content: 引用 6 楼 zhao4zhong1 的回复: textmode                         <CONIO.H>   #include <conio.h>   int main(void)  {     textmode(BW40);     cprintf("ABC");     getch();      textmode(C40);     cprintf("ABC");     getch();      textmode(BW80);     cprintf("ABC");     getch();      textmode(C80);     cprintf("ABC");     getch();      textmode(MONO);     cprintf("ABC");     getch();      return 0;  }    textmode(BW80); textmode(c80);textmode(MONO);三种模式在执行的时候还是只能输出80列数据，我希望有100列甚至更多。

user: user-0
content: 引用 5 楼 ForestDB 的回复:纯字符的显示器的分辨率不就是80 * 25，133 * 40？这么几种么？ 可以看看vga相关的知识。我的现在是80*25，有什么办法可以换成133*40吗？

user: user-2
content: 纯字符的显示器的分辨率不就是80 * 25，133 * 40？这么几种么？ 可以看看vga相关的知识。

user: user-3
content: 珍惜下生命，不要浪费在TC上。

user: user-1
content: 研究一下INT 10h

user: user-4
content: 你该换个思路，我记得以前玩DOS游戏的时候画面很好看啊，应该是一个像素一个像素画出来的，你看看有没有描绘像素点的函数，这样就不需要考虑80*25的限制了。

user: user-5
content: 这是计算题，和编译器有关系么？ 分辨率，可以缩放，应该问题不大吧