有没有办法读取正在评估的 if 语句?我的意思是,就像在 realpath 中获取返回值一样 -
if(realpath(path.c_str(), realPath) == 0)
(gdb) set variable p = malloc(sizeof(int))
(gdb) print p
$2 = (int *) 0x40013f98 (address allocated by malloc)
(gdb) set variable *p = 255
(gdb) print *p
$3 = 255
在 gdb 提示符下(如果您在编译时启用了调试符号)
print realpath(path.c_str(),realPath)
它将打印结果,非常巧妙。