清屏函数BUG
记录一个学习中使用的清屏函数BUG
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <Windows.h>
void gotoxy(int x,int y) //光标移动到(x,y)位置并且清屏
{
HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
COORD pos;
pos.X = x;
pos.Y = y;
SetConsoleCursorPosition(handle,pos);
}
void main()
{
int a=-1;
while(1)
{
Sleep(500);
gotoxy(1,1);
printf("%d\n",a);
a++;
if(a>1000)
a=0;
}
}
运行此代码后屏幕会出现 -1,01,11,21…91,10,11
刷新一个数字是,该数字会取代“-”号的位置,1所在的位置没有被清除。具体修改暂时不清楚,先记录如下。