Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 有哪些不同的方法使终端不回显我们使用标准库键入的内容?_C_Unix_Terminal - Fatal编程技术网

C 有哪些不同的方法使终端不回显我们使用标准库键入的内容?

C 有哪些不同的方法使终端不回显我们使用标准库键入的内容?,c,unix,terminal,C,Unix,Terminal,我想知道是否有办法使终端不响应我们仅使用标准C库编写的内容?如果“仅标准C库”的意思是仅限于C语言标准定义的功能,那么就不是了。语言标准承认存在各种具有不同特性的I/O设备,但它没有对其中任何一种设备的管理做出规定 如果您的意思只是不想安装或链接其他库到您的程序,那么它是特定于平台的,但通常是这样,通过这种方式提供了终端管理功能。特别是,POSIX定义了一个终端控制接口,其功能和数据结构在声明后有时被称为“termios”。我不太确定我是否会将其描述为“easy API”,但它应该允许您关闭键盘

我想知道是否有办法使终端不响应我们仅使用标准
C
库编写的内容?

如果“仅标准C库”的意思是仅限于C语言标准定义的功能,那么就不是了。语言标准承认存在各种具有不同特性的I/O设备,但它没有对其中任何一种设备的管理做出规定


如果您的意思只是不想安装或链接其他库到您的程序,那么它是特定于平台的,但通常是这样,通过这种方式提供了终端管理功能。特别是,POSIX定义了一个终端控制接口,其功能和数据结构在声明后有时被称为“termios”。我不太确定我是否会将其描述为“easy API”,但它应该允许您关闭键盘输入,通过两个函数调用(或者仅一个函数调用,取决于您的计数方式)将其回送到终端显示。你会特别想看看。您应该能够在Linux上使用该方法,可能也可以在macOS上使用。

它依赖于编译器,因为终端控制依赖于操作系统。Linux有
termios.h
(POSIX,不是标准C),windows有一些不同的功能。什么操作系统?对于Linux/Unix,您可以看到它适用于Linux和MacOS。我见过其他使用非标准库的选项。如果没有直接使用一个或两个函数的方法,那么我将不得不使用非标准方法。顺便说一句,谢谢你的回答。你找到了哪些选择?不知道你尝试了什么,我们帮不了你。这不是因为我对代码有问题。我已经尝试过ncurse和其他类似的库,它们工作得很好,但我想知道标准库中是否有一些简单的
API
,这样我就不必只为一件事使用第三方库了。