寻找 C 语言 getchar() 的 Go 等效项
在 C 编程中,getchar() 是读取单个字符的常用函数来自标准输入,无需缓冲。 Go 是否提供了具有类似功能的函数,特别是可以在控制台环境中处理选项卡击键的函数?事实证明,此功能对于为控制台应用程序开发自动完成功能非常有用。
Go 替代方案:详细分解
Go 不提供与 C 的 getchar( 直接等效的方法) )。但是,我们可以使用以下代码实现类似的功能:
package main import ( "bufio" "fmt" "os" ) func main() { reader := bufio.NewReader(os.Stdin) input, _ := reader.ReadString('\n') fmt.Printf("Input Char Is : %v", string([]byte(input)[0])) }
说明:
此 Go 代码采用以下步骤:
注意:
请务必记住,C 中的 getchar() 要求用户在输入字符后按 Enter 键。此处介绍的 Go 代码没有此限制。如果您需要这种行为,请考虑探索替代方法,例如curses或readline,如所提供的文档中所建议的。
以上是如何在 Go 中实现 C 的 `getchar()` 功能,包括 Tab 键处理?的详细内容。更多信息请关注PHP中文网其他相关文章!