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是不显示输入内容的意思

 

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


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM