您的位置:

定位光标c语言,c语言定位光标位置

本文目录一览:

C语言定位光标

用Win32 API

SetConsoleCursorPosition是API中设置控制台光标位置的函数。

#include stdio.h

#include windows.h

int main(void)

{

HANDLE hOut;

COORD pos= {0,2}; /* 光标的起始位(第1列,第3行) 0是第1列 2是第3行*/

hOut = GetStdHandle(STD_OUTPUT_HANDLE);

SetConsoleCursorPosition(hOut, pos);

printf("定位光标位置(%d,%d)\n",pos.X,pos.Y);

return 0;

}

C语言编程中,怎样在屏幕上定位光标?

C标准并没有提供在屏幕上定位光标的方法,其原因很多。C被设计成能在各种各样的计算机上工作,而其中的许多机型都有不同的屏幕类型。例如,在行式打印终端上,不能向上移动光标;一个嵌入式系统甚至也可能是用c编写的,而在它的应用场合可能根本就没有屏幕。 尽管这样,在屏幕上定位光标对你的程序来说还是有用的。你可能希望给用户一个吸引人的视觉效果,并且只能通过移动光标来实现;你还可能想用相应的输出命令尝试一点动画效果。尽管这方面没有标准的处理方法,但还是有好几种方法可以解决这个问题。 首先,编译程序的开发者会提供一个函数库,专门处理基于他们的编译程序的屏幕输出操作,其中肯定会有定位光标的函数。但是,很多人认为这是最差的解决办法,因为每一个开发商都可以自由地开发自己的实现方法,所以在一种编译程序上开发的程序,当移到另一种编译程序上时,几乎必然要重写,更别说移到另一种计算机上了。 其次,可以定义一套标准的库函数,并使编译程序的开发者在他的编译程序中实现这套函数。流行的Curses软件包就起源于这种思路。在大多数计算机和编译程序中都可以使用Curses,因此,用Curses实现屏幕输出的程序在大多数计算机和编译程序中都可以工作。 第三,你可以利用这样一个事实,即你想打印到其上的设备会用一种特定的方式解释你送过去的字符。终端(或屏幕)应设计成按一种标准方式去解释送给它们的字符,这就是ANSI标准。

c语言里怎么定位光标

设置CMD窗口光标位置

void setxy(int x, int y)  //x,y为光标座标

{

   COORD coord = {x, y};

   SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), coord);

}

C语言如何获得光标位置?

本人试过可以。

HANDLE gh_std_out;

gh_std_out = GetStdHandle(STD_OUTPUT_HANDLE);

CONSOLE_SCREEN_BUFFER_INFO bInfo;

GetConsoleScreenBufferInfo(gh_std_out,bInfo);

bInfo.dwCursorPosition.Y

bInfo.dwCursorPosition.X 就是行列数了,int类型的哦。