我有一个叫做test_linked_list()的函数,它使用一系列if语句来测试一个数据结构。如果测试失败,它就调用return 0。
// ie. test_linked_list() { if(!insert_end(l,10)) return 0; // ... more tests }
我想知道哪个测试失败了。除了在gdb中手动设置断点并使用next查看调用了哪个return 0之外,还有其他方法吗?例如,GDB脚本?
next
return 0
hivapdat1#
还有别的办法吗?一种简单的方法是使用UNIX约定,成功时使用return 0,失败时使用return 1、return 2等。注意,编译器总是为每个函数使用 * 单个 * return;没有“which return”--一旦函数被编译,它们都是一样的。
return 1
return 2
return
1条答案
按热度按时间hivapdat1#
还有别的办法吗?
一种简单的方法是使用UNIX约定,成功时使用
return 0
,失败时使用return 1
、return 2
等。注意,编译器总是为每个函数使用 * 单个 *
return
;没有“which return”--一旦函数被编译,它们都是一样的。