linux没有 conio.h解决的方式


conio.h不是C标准库中的头文件,在ISOPOSIX标准中均未定义。

conioConsole Input/Output(控制台输入输出)的简写,当中定义了通过控制台进行数据输入和数据输出的函数。主要是一些用户通过按键盘产生的相应操作。比方getch()函数等等。大部分DOSWindowsPhar LapDOSXOS/2等平台上的C编译器提供此文件,UNIXLinux平台的C编译器本身通常不包括此头文件,但已经有其兼容包,可參考:

http://conio.sourceforge.net/

另外大家平时主要是利用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;

}

长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号





    联系我们

    欢迎来到TinyMind。

    关于TinyMind的内容或商务合作、网站建议,举报不良信息等均可联系我们。

    TinyMind客服邮箱:support@tinymind.net.cn