输入命令的控制台

Max*_*rai 0 c++ debugging console input

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

Eld*_*Mor 5

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

假设您有一个具有单个按钮和单个文本标签的应用程序,并且每次按下该按钮时 - 文本标签上升1,从1到2到3等.

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

  1. 收到"关机"命令
  2. 接收"重置计数器"命令
  3. 每次点击发送有关当前计数的更新
  4. 等等

然后构建另一个外部应用程序,它连接到主应用程序,并根据它从用户获得的控制台输入向它发送消息.它还会监听传入的更新并将其显示给用户.

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

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