原文:http://blog.sina.com.cn/s/blog_6a95e00b0100zqvf.html
linux下没有conio.h的头文件,想要实现getch就无法实现,但是有办法可以代替
//#include <conio.h>
void main(){
char ch;
for(;????{
// system("stty -echo");
ch = getch();
if(ch27) break;
if(ch13)
continue;
putch(ch);
}
}
Linux实现conio.h中的getch()功能
在windows下写C程序时有时会用到conio.h这个头文件中的getch()功能,即读取键盘字符但是不显示出来(without echo)
后来发现含有conio.h的程序在linux无法编译通过,因为linux没有这个头文件,今天突然发现可以用其他方法代替,贴出来
//in windows
include<stdio.h>
include<conio.h>
int mian(){
char c;
printf("input a char:");
c=getch();
printf("You have inputed:%c \n",c);
return 0;
}
//in linux
include<stdio.h>
include <stdlib.h> //原文没有这句,但是会出现system的警告
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;
}
这样就可以了,注:linux中stty -echo是不显示输入内容的意思
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:linux下解决conio.h的问题 - Python技术站