最近一直在完善自己linux下shell的项目,遇到了一个难处就是如何实现方向键在shell中的功能,那么要实现这个功能首先就应该要学会如何抓取方向键的输入,毕竟方向键的输入和平常的输入不同。

首先我们要用到一个新的头文件#include <curses.h>

我也就是捕捉方向键,所以进入keypad模式,

那么步骤如下:

initscr();

crmode();//这三行来开启

keypad(stdscr,TRUE);//当开启keypad的时候你的屏幕刷新,如果你写的是shell可以把这个界面当作开始,然后特别要注意的是在开启keypad以后他的输出和不开启的输出格式是不一样的,这个你要想办法去把它解决

//

然后关闭回显

noecho();

用getch()接受key值

进行判断和操作

最后关闭

endwin();

最后我想请问一下如何实现左右键,上下键的命令我已经解决了,就是不知道光标怎么弄。

linux下如何捕捉方向键相关推荐

  1. linux下vi编辑器方向键变成字母的解决方法

    一.现象: 最近部署系统安装linux系统后,使用vi编辑器编辑文件时,使用方向键盘时光标没有移动,而是在页面打印ABCD等字样,并且删除键盘也不起效. 二.原因: 这个问题的最终原因是linux系统 ...

  2. Linux下使用Vi是方向键变乱码 退格键不能使用的解决方法

    在Linux下编辑一些文件.这就涉及到了vi这个编辑器了.在Linux下,初始使用vi的时候有点问题.就是在编辑模式下使用方向键的时候,并不会使光标移动,而是在命令行中出现[A [B [C [D之类的 ...

  3. linux 下 C 编程和make的方法 (十、C版的try catch 捕捉段错误和异常处理)

    2019独角兽企业重金招聘Python工程师标准>>> 哇塞,C语言有try catch吗?当然没有.倒..可能有人说了,那你野鬼说没有的东西做什么. 这里需要重申一下,所谓正向设计 ...

  4. Linux下的程序调试——GDB

    无论是多么优秀的程序员,都难以保证自己在编写代码时不会出现任何错误,因此调试是软件开发过程中的一个必不可少的 组成部分.当程序完成编译之后,它很可能无法正常运行,或者会彻底崩溃,或者不能实现预期的功能 ...

  5. Linux下编写贪吃蛇游戏

    Linux下编写贪吃蛇游戏 文章目录 Linux下编写贪吃蛇游戏 前言 一.贪吃蛇代码 二.运行贪吃蛇代码 前言 本程序需要ncurses库,ubuntu下安装ncurses可以执行下面命令: sud ...

  6. Linux下C语言编程

    第1章 Linux下C语言编程简介 本章将简要介绍一下什么是Linux,C语言的特点,程序开发的预备知识,Linux下C语言开发的环境,程序设计的特点和原则以及编码风格等.通过本章的学习,可以对在Li ...

  7. 初识Linux下C语言编程

    本章将简要介绍一下什么是Linux,C语言的特点,程序开发的预备知识,Linux下C语言开发的环境,程序设计的特点和原则以及编码风格等.通过本章的学习,可以对在Linux下使用C语言编程有一个基本的了 ...

  8. Linux下进程通信知识点学习笔记(一)

    4种主要事件导致进程创建: 系统的初始化: 执行了正在运行的进程所调用的进程创建系统调用: 用户请求创建一个进程: 一个批处理作业的初始化: 进程的终止: 正常退出: 出错退: 严重错误: 被其他进程 ...

  9. Linux下C++开发工具介绍

    概述     就C++开发工具而言,与Windows下微软(VC, VS2005等)一统天下相比,Linux/Unix下C++开发,可谓五花八门,各式各样.Emacs, vi, eclipse, an ...

最新文章

  1. 两年伯克利数学博士毕业,蝉联阿里数学竞赛金奖,张钺:我就是个普通人
  2. “jQuery风暴” 推荐及配套代码下载
  3. 贷款审批到底会考核哪些内容?
  4. Django 使用 mysql 数据库连接
  5. JDBC与JNDI应用比较
  6. 【教程】条形码组件Spire.Barcode 教程:如何在C#中创建DataMatrix条码
  7. 剑指OFFER之包含min函数的栈(九度OJ1522)
  8. github本地库及clone常用命令
  9. 不同语言Sql Server的库交换出现乱码
  10. iOS App 签名的原理 App 重签名(二)
  11. MD5算法原理及代码实现
  12. 魔物学院计算机,测试 | 你属于魔法学校什么学院的?
  13. 用户太多:互联网巨头之惑
  14. Java学习笔记:案例:计算发送工资条
  15. Nmap常用命令及扫描原理
  16. 子网掩码和IP地址的关系
  17. 滑块拖动验证码智能识别验证码技术(持续更新)
  18. 亚马逊云科技中国峰会,一起探路未来
  19. Micro API使用
  20. JAVA中的Map集合

热门文章

  1. 网格交易法以及在数字货币中基于Python的量化实现
  2. java 笔触类_下列属于笔触类型的绘图工具有那些?
  3. 【狂飙后遗症】你磕的CP是那一对,他们的后代长什么样?
  4. 配置apache支持django
  5. mybatis大于小于等于的写法
  6. Jquery实现大于等于且小于等于-遁地龙卷风
  7. Android 系统截屏实现
  8. python turtle画猫_Turtle库画小猫咪
  9. mysql中字符串拼接函数_MySQL 字符串连接CONCAT()函数
  10. Android 手势识别向左,右,上,下,滑动的方向