假设我正在使用fgets读取字符串,并且我想防止该字符串的字符在终端内部内部回显(没有bash的技巧)。我该怎么办?
假设您正在与POSIX兼容的操作系统上运行,您需要使用stdin和tcgetattr()来播放tcgetattr()的本地控制终端(termios)标志:
stdin
tcgetattr()
tcsetattr()
您可能希望在输入期间禁用其他标志。这只是一个例子。当心中断-即使您的程序被中断,您也确实想重置终端状态。
而且这可能不适用于所有tcsetattr()类型。