win32-API

win32-API

C++控制台编程

我们的控制台文本窗口是基于win32 api实现的
我们以例子来学习这种编程的方法:
控制台程序的外观和操作就像MS-DOS窗口一样,控制台有一个输入缓冲区以及一个或多个屏幕缓冲区:

  • 输入缓存区(input buffer)包含一组输入记录(input records),其中每个记录都是一个输入事件的数据。输入事件的例子包括键盘输入,鼠标点击,以及用户调整控制台窗口大小
  • 屏幕缓冲区(screen buffer)是字符与颜色数据的二维数组,他会影响控制台窗口文本的外观

    例1:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    #include <stdio.h>
    #include <windows.h>
    int main()
    {
    printf("Hello World!\n");
    Sleep(1000);
    system("cls");
    return 0;
    }
    我们发现这个程序和我们的一般的hello world程序不同,它实现的功能是在1000ms后清空控制台的内容,使用了sleep和system命令。
Read more