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 ",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 ",c);
return 0;
}
这样就可以了,注:linux中stty -echo是不显示输入内容的意思

参考博客:https://blog.csdn.net/qq_36955347/article/details/72794934

原文地址:https://www.cnblogs.com/zhongllmm/p/14248943.html