【问题标题】:How to read a char in Vala?如何在 Vala 中读取字符?
【发布时间】:2014-02-11 22:31:17
【问题描述】:

我正在使用 Vala 语言编程,但遇到一个问题:我不知道如何读取字符(虽然我知道如何读取字符串和整数)。

string name = stdin.read_line();
int maximum = int.parse(stdin.read_line()); 
char option = ????;

一个选项是使用 scanf(),但如果我使用它,我会在执行期间遇到问题。

谢谢:)

【问题讨论】:

    标签: vala


    【解决方案1】:

    如果您只想从 GLib.FileStream 中读取单个字符,您可以使用 GLib.FileStream.getc,它“从流中读取下一个字符并将其作为无符号字符转换为 int 或 EOF 在末尾文件或错误。”实际上,GLib.FileStream.read_line is implemented using getc。所以 ”????”在您的问题中可能类似于(char) stdin.getc()

    如果您尝试与用户交互,请注意输入通常由终端缓冲,直到行尾。如果您想在用户按下某个键后立即获得一个字符,您需要使用 ncurses 之类的东西(Vala 绑定与 valac 一起分发)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-27
      • 2022-07-01
      • 2012-01-29
      • 2014-07-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多