C光标问题

C光标问题,c,cursor,turbo-c,C,Cursor,Turbo C,我是Turbo C的新手。。。我只是想问一下,要启用游标,我应该做的第一件事是什么。我想控制光标并重新定义键盘上的键。请给我台阶,提前谢谢 您可以看看gotoxy(int x,int y)函数,它不是ANSI C,而是Turbo C中的Borland扩展。它将光标放置在文本模式显示的坐标(x,y)处 至于重新定义击键,您是希望在程序中还是在ide中这样做?如果在程序中,可以使用getchar()返回的扫描代码,并在使用putchar(char c)重新输出之前对其进行修改。就为ide函数定义键绑

我是Turbo C的新手。。。我只是想问一下,要启用游标,我应该做的第一件事是什么。我想控制光标并重新定义键盘上的键。请给我台阶,提前谢谢

您可以看看gotoxy(int x,int y)函数,它不是ANSI C,而是Turbo C中的Borland扩展。它将光标放置在文本模式显示的坐标(x,y)处

至于重新定义击键,您是希望在程序中还是在ide中这样做?如果在程序中,可以使用getchar()返回的扫描代码,并在使用putchar(char c)重新输出之前对其进行修改。就为ide函数定义键绑定而言,我认为(这已经是很长时间了)用户界面允许在菜单中使用键绑定


很抱歉,我无法提供更多帮助。

您可以看看gotoxy(int x,int y)函数,它不是ANSI C,而是Turbo C中的Borland扩展。它在文本模式显示中将光标放置在坐标(x,y)处

至于重新定义击键,您是希望在程序中还是在ide中这样做?如果在程序中,可以使用getchar()返回的扫描代码,并在使用putchar(char c)重新输出之前对其进行修改。就为ide函数定义键绑定而言,我认为(这已经是很长时间了)用户界面允许在菜单中使用键绑定


很抱歉,我帮不上什么忙。

当恐龙统治地球,一些专业程序员实际使用Turbo C时,光标支持是通过名为
conio.h
的include文件中的例程处理的

你不会找到很多互联网时代关于这方面的文章。但我设法找到了一个引用,引用了以下内容:

/*使用特殊功能显示文本的程序*/
#包括
主要(){
int n,m,;
/*清除屏幕*/
clrsc();
/*将文本模式设置为80列颜色*/
文本模式(3);
/*设置文本颜色*/
textcolor(4);
/*设置文本背景色*/
文本背景(2);
/*第5行和第14列的位置*/
gotoxy(5,15);
printf(“输入两个数字:”);
scanf(“%d%d”,&n,&m);
gotoxy(10,15);
printf(“输入的数字是%d和%d\n\n”,n,m);
}
不清楚您的意思是想重新定义键,以便在程序运行时,当用户按下某个键时,它会产生不同的字符输出。如果是这样,您可能希望使用类似于
bioskey()
…的东西,因为
getch()
只读取字符,而不读取函数键或修饰符:


当恐龙统治地球,一些专业程序员实际使用Turbo C时,光标支持是通过名为
conio.h
的include文件中的例程处理的

你不会找到很多互联网时代关于这方面的文章。但我设法找到了一个引用,引用了以下内容:

/*使用特殊功能显示文本的程序*/
#包括
主要(){
int n,m,;
/*清除屏幕*/
clrsc();
/*将文本模式设置为80列颜色*/
文本模式(3);
/*设置文本颜色*/
textcolor(4);
/*设置文本背景色*/
文本背景(2);
/*第5行和第14列的位置*/
gotoxy(5,15);
printf(“输入两个数字:”);
scanf(“%d%d”,&n,&m);
gotoxy(10,15);
printf(“输入的数字是%d和%d\n\n”,n,m);
}
不清楚您的意思是想重新定义键,以便在程序运行时,当用户按下某个键时,它会产生不同的字符输出。如果是这样,您可能希望使用类似于
bioskey()
…的东西,因为
getch()
只读取字符,而不读取函数键或修饰符:


ahmm。。。如何安装ANSI.SYS?我怎么能找到它呢?嗯。。。如何安装ANSI.SYS?我怎么能找到它呢?我只是很困惑。。。什么是ANSI.SYS和CONFIG.SYS?这些都是DOS时代的遗物,您不应该知道或关心它们。(很像Turbo C)@Fork:我可以在哪里找到CONFIG.SYS或CONFIG.NT文件?如果您的计算机运行的是现代版本的Windows,您可能无法(或不应该)修改这些文件。我怀疑你想这样做的动机,-但是-如果你真的想运行旧的DOS软件,请使用DOSBox之类的仿真器。它应该在“C:\”目录中突出显示CONFIG.SYS和AUTOEXEC.BAT:我只是感到困惑。。。什么是ANSI.SYS和CONFIG.SYS?这些都是DOS时代的遗物,您不应该知道或关心它们。(很像Turbo C)@Fork:我可以在哪里找到CONFIG.SYS或CONFIG.NT文件?如果您的计算机运行的是现代版本的Windows,您可能无法(或不应该)修改这些文件。我怀疑你想这样做的动机,-但是-如果你真的想运行旧的DOS软件,请使用DOSBox之类的仿真器。它应该在“C:\”目录的显著位置有一个CONFIG.SYS和AUTOEXEC.BAT:@Fork:如果我要对角移动光标呢?我无法使用此代码获取它-
printf(“\x1B[B”);
其中
\x1B
是转义字符数值1B十六进制(27十进制);
[
是一个始终位于特定代码之前的括号;和
B
特定操作:光标向下您正在询问一些不建议您使用ANSI转义码的人的ANSI转义码的问题。Windows已采用控制台API并在默认情况下逐步淘汰终端中的ANSI支持,启用它的价值值得怀疑,尤其是当no另一台机器上有它。你找不到一个简单的方法从像Turbo C这样古老的东西调用控制台API:你有没有试过输入我给出的程序代码作为这个问题的答案,它使用了conio.h?这使你能够在80x25屏幕上任意定位光标。现在,我承认了
/* Program to display text using special functions*/
#include <conio.h>

main (){
    int n,m,;

    /* clears the screen */
    clrscr ( );

    /* sets the text mode to 80 columns color*/
    textmode (3);

    /* SETS THE TEXT COLOR*/
    textcolor (4);

    /* sets the text background color */
    textbackground (2);

    /* Positions to 5th row and 14th column*/
    gotoxy (5,15);
    printf ("Enter two numbers:");
    scanf ("%d %d", &n, &m);
    gotoxy (10,15);
    printf ("Entered numbers are %d and %d \n\n", n,m);
}