C语言中函数window(10,10,40,11);各参数含义

来源:互联网 发布:量子纠缠 知乎 编辑:程序博客网 时间:2024/05/16 06:43

编写C语言程序时对于这个函数各参数含义不解,搜索了一下,没找到具体解释,自己试验,得到答案:


这个函数的作用是“定义活动文本模式窗口”,这里要注意“活动”两字,不仅指“文本模式窗口”(一个矩形),而且还是“活动”的,即窗口大小可以变动,试验的结果是这个矩形窗口长度和宽度都能改变。


这个窗口是怎么形成的呢?它是从一个顶点开始,向右下方逐渐扩散,最终形成窗口,类似QQ截图时从左上方到右下方确定截图范围这个过程。这个顶点是由前两个参数确定的。活动窗口的宽(沿X轴方向长度)和长(沿Y轴方向长度)则有后两个参数确定。


用a、b、c、d依次表示四个参数 。a表示横坐标b表示纵坐标,(a,b)确定形成窗口的起始位置,(c+1-a)的值确定窗口的宽度, (d+1-b)确定窗口的长度。

虽然如此,但是显示的图形却可能让人疑惑。因为这个函数是“文本模式”的窗口,它是要内嵌文本的。显示的结果是以文本的显示为标准的。此例中,如果文本字符个数小于31,那么只能显示不到1行的图形;但如果超过31但又不是31的整数倍,则显示1行多(不成矩形),如果是31的整数倍,则显示成一个矩形。


如果这个活动窗口容纳不下文本,默认原因是长度不够。函数处理的方式是假设窗口长度足够大,显示文本完整显示之后,从最末一行开始,截取和窗口等长的文本模块,然后显示出来。


有实验代码:

     #include <conio.h>

  int main(void)
  {
  window(10,10,40,11);
  textcolor(BLACK);
  textbackground(WHITE);
  cprintf("This is a test\r\n");
  return 0;
  }

原创粉丝点击