这是我试过的,但似乎不起作用:
(gdb) call printf("%d",6)
$8 = 1
Run Code Online (Sandbox Code Playgroud)
iCo*_*der 10
你看不到结果是因为stdout(FILE*)有一个输出缓冲区.在缓冲区已满或遇到"\n"之前,它不会向屏幕输出任何内容.
所以这样调用printf:
(gdb) call (int)printf("%d\n", 6)
6
$6 = 2
Run Code Online (Sandbox Code Playgroud)
顺便说一句,"$ 6 = 2"是printf的结果值.
| 归档时间: |
|
| 查看次数: |
5883 次 |
| 最近记录: |