【发布时间】:2013-04-25 13:41:55
【问题描述】:
我正在尝试将软件移植到微控制器(因此我无法使用 gdb 等单步执行代码)并且它崩溃得令人不快。
为了找出原因,我想在每条语句之前插入一个printf(),以呼应上述语句,例如
void foo(int c) {
bar();
for(int i=0; i<c; ++c) {
baz(i);
}
very_long_function(&with, &arguments, \
on->several(lines));
}
会变成
void foo(int c) {
printf("bar();\n");
bar();
printf("for(int i=0; i<c; ++c)\n");
for(int i=0; i<c; ++c) {
printf("baz(i)\n");
baz(i);
}
printf("very_long_function(&with, &arguments, \
on->several(lines));\n");
very_long_function(&with, &arguments, \
on->several(lines));
}
是否已经有一些脚本可以执行此操作?
【问题讨论】:
-
确保不要在没有 {} 的块中添加行,例如 1 行 for 循环。
标签: c printf-debugging