C语言之实现控制台光标随意移动的实例代码

C语言之实现控制台光标随意移动的实例代码,第1张

概述原理引入windows.h,首先是要获得输入的东西,然后通过判断:1、方向键:执行上下左右的移动功能

原理引入windows.h,首先是要获得输入的东西,然后通过判断:

1、方向键:执行上下左右的移动功能

2 、回车键:执行换行的功能。

3、普通键:输入功能。

终点就是要获取到屏幕上的坐标,当按下了方向键以后,坐标值+1,或者减一,从而实现了光标的自由移动。

//C语言实现控制台中光标随意移动#include <stdio.h>#include <windows.h>#include <conio.h> HANDLE hout;//获得输入char getinput(){  int ch; //输入字符串     COORD coord; //屏幕上的坐标  CONSolE_SCREEN_BUFFER_INFO csbi; //控制台屏幕缓冲区信息   coord.X=10;  coord.Y=10;   ch=getch();   //0x0d表示回车,0XE0表示上下左右等键的键码  while(ch==0xE0||ch==0x0d)  {    GetConsoleScreenBufferInfo(hout,&csbi);    coord.X=csbi.DWCursorposition.X; //得到坐标X的值    coord.Y=csbi.DWCursorposition.Y; //得到坐标Y的值    //如果是回车    if(ch==0x0d)    {      coord.X=0;      coord.Y++;      SetConsoleCursorposition(hout,coord);      break;    }    ch=getch();    //上    if(ch==0x48)    {      if(coord.Y!=0)coord.Y--;    }    //下    else if(ch==0x50)    {      coord.Y++;    }    //左    else if(ch==0x4b)    {      if(coord.X!=0){coord.X--;}    }    //右    else if(ch==0x4d)    {      if(coord.X!=79)coord.X++;      else      {        coord.X=0;        coord.Y++;      }    }    SetConsoleCursorposition(hout,coord);    ch=getch();  }  return ch;  }int main(){  char ch;  hout=GetStdHandle(STD_OUTPUT_HANDLE);  //从键盘获取输入,如果是方向键则执行方向功能,如果是回车键则换行,如果是字符则输出  while(1)  {    ch=getinput();    printf("%c",ch);  }   getchar(); }

以上这篇C语言之实现控制台光标随意移动的实例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程小技巧。

总结

以上是内存溢出为你收集整理的C语言之实现控制台光标随意移动的实例代码全部内容,希望文章能够帮你解决C语言之实现控制台光标随意移动的实例代码所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1246700.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-07
下一篇2022-06-07

发表评论

登录后才能评论

评论列表(0条)

    保存