ubuntu驱动开发吧 关注:25贴子:177
  • 0回复贴,共1

Linux 下没有conio.h 已解决

只看楼主收藏回复

#include <stdio.h>
//#include <conio.h>
void main(){
char ch;
for(;;){
// system("stty -echo");
ch = getch();
if(ch==27) break;
if(ch==13)
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>
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是不显示输入内容的意思


IP属地:安徽1楼2016-03-06 09:36回复