输入命令的控制台

时间:2010-11-19 15:22:50

标签: c++ debugging input console

我想为我的应用程序制作一些调试控制台。它应输出一些数据并输入输入命令。我怎样才能做到这一点?最好的方法是更新控制台,如:绘图信息和数据后输入提示。 我正在Linux下开发。例如, gdb 可以从控制台获取输入。

1 个答案:

答案 0 :(得分:5)

如果您熟悉套接字编程(或实际上,任何其他类型的IPC机制),您可能希望在应用程序中启用一些侦听器,并开发一个外部应用程序,它将为您执行所有“控制台”操作,与主要应用程序通信。

假设您有一个具有单个按钮和单个文本标签的应用程序,每次按下该按钮时 - 文本标签会增加1,从1增加到2到3等。

您可以在该应用程序中构建套接字侦听器。当套接字侦听器接受新的传入连接时,您将启动一个可以的连接线程:

  1. 收到“关机”命令
  2. 收到“重置计数器”命令
  3. 每次点击发送有关当前点数的更新
  4. 然后构建另一个外部应用程序,它连接到主应用程序,并根据它从用户获得的控制台输入向其发送消息。它还会监听传入的更新并将其显示给用户。

    使用外部应用程序对主应用程序进行调试控制非常有用,原因如下:

    1. 无论调试应用程序如何出错,都不会损害主应用程序的发布版本。
    2. 处理控制台管理的所有代码(主要应用程序都是多余的)可以保留在主应用程序之外。
    3. 只要您同时了解双方之间的协议,制作两个项目就可以更轻松地与其他人协作。
    4. 实施我的建议意味着您可以远程调试您的应用程序,以防您无法访问主应用程序(例如,如果它位于客户站点上)。