我有一个在HP-UX环境中执行的C应用程序,我需要获取堆栈跟踪。
我正在尝试使用U_STACK_TRACE,但是输出到stderr的是其他地方,并且我需要将其打印为字符串。
我该怎么做呢?
也就是说,如何从U_STACK_TRACE获取输出并将其放入字符串中,而不是将其写入标准错误。
发布于 2011-09-22 22:37:52
U_STACK_TRACE()将格式化的堆栈跟踪打印到标准错误。_UNW_STACK_TRACE()在参数out_file指示的输出流上生成格式化的堆栈跟踪。流必须是可写的流,才能生成输出。
因此,使用fopen()打开一个文件,并调用_UNW_STACK_TRACE()而不是U_STACK_TRACE()。
https://stackoverflow.com/questions/7516273
复制相似问题