[控制台尊享] MinGW下使用 gotoxy函数

Posted return-blog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[控制台尊享] MinGW下使用 gotoxy函数相关的知识,希望对你有一定的参考价值。

相信用过Turbo C的童鞋都知道gotoxy这个函数吧,但由于某些原因,windows下的mingw没有直接提供这个函数。


那么gotoxy究竟是干什么的呢?假设你的程序是基于控制台的(就是一个黑窗窗),当你在第五行输出了一段字符后想要切回第一行再输出字符,而不能使用cls命令,gotoxy函数就派上用场啦!他能让你的光标直接跳到第x列y行,简直是控制台党必备啊!如果要在mingw下直接使用gotoxy,就需要自己写一个,

void gotoxy(int x,int y)//自己定义一个gotoxy,将光标跳到x列y行 
{   
   COORD c;     //定义一个光标类
   c.X = x - 1; //设置这个光标的位置
   c.Y = y - 1; 
   SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),c);   //调用WindowsAPI来设置光标位置
}



使用范例:

#include <iostream>
#include <cstdio>
#include <windows.h>
using namespace std;

int main(){
    cout << "




" << "Hello";
    gotoxy(1,1);
    cout << "Hello 2";
    cin.get();
    return 0;
}

以上是关于[控制台尊享] MinGW下使用 gotoxy函数的主要内容,如果未能解决你的问题,请参考以下文章

<c++控制台;用gotoxy()函数实现方向键进行选择

如何使用 gotoxy 函数而不是 clrscr

vc下实现TC的gotoxy()功能

windows下使用mingw/gdb无法调试eclipse helios cdt上的小程序,控制台死机

使用 printf 为 Linux 实现 gotoxy()

Windows环境下MinGW/gcc安装和环境配置