linux没有 conio.h解决的方式
conio.h不是C标准库中的头文件,在ISO和POSIX标准中均未定义。
conio是Console Input/Output(控制台输入输出)的简写,当中定义了通过控制台进行数据输入和数据输出的函数。主要是一些用户通过按键盘产生的相应操作。比方getch()函数等等。大部分DOS。Windows,Phar Lap,DOSX,OS/2等平台上的C编译器提供此文件,UNIX和Linux平台的C编译器本身通常不包括此头文件,但已经有其兼容包,可參考:
另外大家平时主要是利用conio.h这个头文件里的getch()函数,即读取键盘字符可是不显示出来(without echo),可是含有conio.h的程序在linux无法直接编译通过,由于linux没有这个头文件。除了利用上述的兼容包外还能够在linux採用原生的方法达到相同的效果,那就是利用linux系统的命令stty –echo。它代表不显示输入内容,源码例如以下。
//in windows
#include<stdio.h>
#include<conio.h>
int main(){
char c;
printf("input a char:");
c=getch();
printf("You have inputed:%c \n",c);
return 0;
}
//in linux
#include<stdio.h>
int main(){
char c;
printf("Input a char:");
system("stty -echo");
c=getchar();
system("stty echo");
printf("You have inputed:%c \n",c);
return 0;
}
版权声明:本文博客原创文章,博客,未经同意,不得转载。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步