我怎样才能显示OPNET Modeler中的调试模式下打印语句?(How can I show pr

2019-10-16 13:44发布

我正在写在OPNET Modeler的C ++代码。 我试图模仿我的方案的调试器模式和我需要跟踪我写它的功能。 我需要证明我把它放在我的代码打印报表。

我在调试模式下使用: ***ltr function_name()***然后***c***

但结果是这样的:

Type 'help' for Command Summary


ODB> ltr enqueue_packet()
Added trace #0: trace on label (enqueue_packet())

ODB> c
|-----------------------------------------------------------------------------|
| Progress: Time (1 min. 52 sec.); Events (500,002)                           |
| Speed: Average (82,575 events/sec.); Current (82,575 events/sec.)           |
| Time : Elapsed (6.1 sec.)                                                   |
| DES Log: 28 entries                                                         |
|-----------------------------------------------------------------------------|
|-----------------------------------------------------------------------------|
| Progress: Time (1 min. 55 sec.); Events (1,000,002)                         |
| Speed: Average (69,027 events/sec.); Current (59,298 events/sec.)           |
| Time : Elapsed (14 sec.)                                                    |
| DES Log: 28 entries                                                         |
|-----------------------------------------------------------------------------|
|-----------------------------------------------------------------------------|
| Progress: Time (1 min. 59 sec.); Events (1,500,002)                         |
| Speed: Average (51,464 events/sec.); Current (34,108 events/sec.)           |
| Time : Elapsed (29 sec.)                                                    |
| DES Log: 28 entries                                                         |
|-----------------------------------------------------------------------------|
|-----------------------------------------------------------------------------|
| Simulation Completed - Collating Results.                                   |
| Events: Total (1,591,301); Average Speed (48,803 events/sec.)               |
| Time  : Elapsed (33 sec.); Simulated (2 min. 0 sec.)                        |
| DES Log: 29 entries                                                         |
|-----------------------------------------------------------------------------|
|-----------------------------------------------------------------------------|
| Reading network model.                                                      |
|-----------------------------------------------------------------------------|

我需要显示在我的代码打印语句。 凡已被出现? 是否有任何步骤之前运行,以确保使用Visual Studio或者穿过我的代码,OPNET调试仿真?

Answer 1:

OPNET Modeler提供下面的命令来打印跟踪输出:

op_prg_odb_print_major()打印字符串标准输出设备的顺序,在开始主要的缩进层次ODB跟踪语句的格式。

op_prg_odb_print_minor()打印字符串标准输出设备的一个序列,在ODB跟踪语句中的次要缩进层次的格式。

op_prg_text_output()打印用户定义的字符串到标准输出设备的序列。

例如:

if (op_prg_odb_ltrace_active ("tcp_window")) {
  /* a trace is enabled, output Window-Related Variables */
  char str0[128], str1[128], str2[128];
  sprintf (str0, "rcv requests pending : (%d)", num_rcvs_allowed);
  sprintf (str1, "local receive window : (%d)", receive_window);
  sprintf (str2, "remote receive window : (%d)", remote_window);
  op_prg_odb_print_major ("Window-Related Variables", str0, str1, str2, OPC_NIL);

  sprintf (str0, "send unacked : (%d)", send_unacked);
  sprintf (str1, "send_next : (%d)", send_next);
  sprintf (str2, "receive next : (%d)", receive_next);
  op_prg_odb_print_minor (str0, str1, str2, OPC_NIL);
}

示例输出,因为它出现在标准输出设备上:

            |       Window-Related Variables
            |               rcv requests pending : (3)
            |               local receive window : (6400)
            |               remote receive window : (10788)
            |               send unacked : (4525)
            |               send_next : (5000)
            |               receive_next : (1200)

[从OPNET Modeler文档取代码。]

注:我猜你正在修改标准模型和使用stdmod库。 如果是这样的话,你的代码不被编译,你不会看到任何调试打印语句。 见偏好“网络仿真库”,看看你用的是仓库,而不是自己编译的代码。



Answer 2:

我没有什么你试图做太多的想法,但我可以直接输出语句针对c ++调试代码中使用以为

OutputDebugStringA("Your string here");

要不就

OutputDebugString("Your string here");

希望这可以帮助!



文章来源: How can I show print statements in debug mode of OPNET Modeler?