代码之家  ›  专栏  ›  技术社区  ›  polyglot

在C++中用可编辑的默认提示?

  •  3
  • polyglot  · 技术社区  · 15 年前

    是否可以(没有外部库,如Boost)提示用户输入,如使用CIN,但使用用户可编辑的默认选项(没有GUI)?

    例如,程序会说:

    Give your input: default
    

    用户可以按Enter键使用“默认”或按1键,然后按Enter键获取“默认1”等。

    编辑以便澄清:

    我目前在程序中使用的是在提示中提供默认值(如下面的某个答案)。但我是为非常特殊的情况而写的,在这种情况下,具有可编辑的默认值非常节省时间(90%的时间,所有用户需要的都是为默认值添加一个后缀)。我只能提示输入后缀,但是在其他10%的情况下,我失去了编辑默认值的灵活性。

    3 回复  |  直到 15 年前
        1
  •  4
  •   Matt K    15 年前

    你可能想用 GNU readline .

        2
  •  3
  •   Jeff L    15 年前

    这通常与您描述的略有不同。将默认选项呈现为 提示的一部分 而不是在它之后。例如:

    Please enter a year (default: 2009):

    Do you really want to exit (N):

    如果用户 想要输入他/她自己的值而不是默认值,他/她不需要删除现有值就可以这样做,这是不好的可用性和相当令人沮丧的,尤其是在处理一系列问题/提示时。

    它也不需要特殊的库,而且大大减少了额外的代码。

        3
  •  0
  •   c4757p    15 年前

    没有外部库不容易。除非你想写一个 许多 你需要一个图书馆。我建议你调查一下 Ncurses .