c语言调用linux命令的库,linux环境下调用C语言的getch()和getche()函数

首先要知道:getch与getche是在conio.h这个头文件里面的,但是,但是conio.h这个文件不是c语言的标准库文件,所以在linux的gcc下是没有这个头文件的,而我们大多数人使用的主要是getch与getche函数,因为getchar函数的功能不是很强大,言归正传,先灌输一些关于linux的知识

stty是一个用来改变并打印终端行设置的常用命令。

1 ,在命令行下,禁止输出大写的方法

stty -icanon 设置一次性读完操作,如使用getchar()读操作,不需要按enter

stty icanon 取消上面设置

stty -a 查看 信息

stty -echo 设置命令不被显示

stty echo 取消不显设置

stty raw -echo

stty raw echo

stty iuclc #开启

stty -iuclc #恢复

2,在命令行下禁止输出小写

stty olcuc #开启

stty -olcuc#恢复

3,打首先要知道:getch与getche是在conio.h这个头文件里面的,但是,但是印出终端的行数和列数

stty size

4,改变ctrl+D的方法:

stty eof "string"

系统默认是ctrl+D来表示文件的结束,而通过这种方法,可以改变!

5,屏蔽显示

stty -echo #禁止回显

stty echo #打开回显

测试方法:

stty -echo;read;stty echo;read

6,忽略回车符

stty igncr #开启

stty -igncr#恢复

7.定时输入

timeout_read()

{

timeout=$1

old_stty_settings=stty -g  #save current settings

stty -icanon min 0 time 100  #set 10seconds,not 100seconds

eval read varname  #=read $varname

stty "$old_stty_settings"  #recover settings

}

更简单的方法就是利用read命令的-t选项

read -t 10 varname

可能上面说得有些多,那就开始上代码把,注意,干货来了

char getch()

{

char c;

system("stty -echo");

system("stty -icanon");

c=getchar();

system("stty icanon");

system("stty echo");

reutrn c;

}

char getche()

{

char c;

system("stty -icanon");

c=getchar();

system("stty icanon");

return c;

}

ok完成了,你可以直接用一个.h文件把上面的代码写进去然后就可以直接使用了,谢谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值