【问题标题】:How to show a long usage information with "Press any key to continue" message?如何使用“按任意键继续”消息显示较长的使用信息?
【发布时间】:2015-05-27 20:30:48
【问题描述】:

抱歉,这可能是一个简单的问题,但我找不到解决方案。我有一个控制台应用程序,它有几个参数。我展示了一个使用信息,如何正确使用应用程序,但是由于我必须解释每个参数,所以它很长。整个用法不适合控制台窗口。

那么我怎样才能只显示适合实际窗口大小的使用量呢?

一个很好的例子是cmd。如果您打开命令提示符,然后键入cmd /?,则会显示使用信息,但它只会显示适合实际窗口大小的大部分使用情况,然后等待按键。如果窗口很小,则必须按 7 次键。但是如果你把控制台窗口变大,你就必须少按一个键。

所以我的问题是,我怎样才能做到这一点?

【问题讨论】:

  • Press any key to continue 提示可以用system("pause") 触发。打开cmd.exe,输入pause,看看会发生什么。
  • 仅显示带有/? 的常规选项,以及带有/? topic1、/? topic2 等的完整帮助
  • @szczurcio:我知道,但我认为这种行为是通过其他方式完成的,因为如果窗口大小发生变化,消息将显示得更少。
  • @Jongware:这也是一个选项,但我喜欢使用 cmd 使用的方法。 cmd是怎么做到的?
  • Google 建议这个 SO 问题(并不完全令人惊讶):stackoverflow.com/questions/10921152/… 请注意注释 - 也许它应该集成到答案中,或者作为独立答案添加。

标签: c windows console-application windows-console


【解决方案1】:

我不知道如何你会执行它,但你需要的是pager。

我还没有测试过,但here 它说more 命令可用于 MS-DOS 和大多数 Windows 版本(Windows 95、98、ME、NT、2000、XP、Vista、7 和 8 )。

如果你单独运行它,你会做echo some-long-text | more。我不知道您将如何在自己的程序中使用它,但应该是这样(我想应该有类似 POSIX 的 system() 系统调用来运行命令)。

【讨论】:

    猜你喜欢
    • 2021-06-03
    • 2018-06-11
    • 2016-04-05
    • 1970-01-01
    • 2010-11-29
    • 2020-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多