GDB的print命令只能打印基本数据类型,像QString这样的复杂类型就不行了。如果在调试过程中(命令行,或者xcode中)不能看QString的值,岂不是很不爽。幸好,gdb提供了扩展功能,可以自定义宏命令。把自定义的命令放到$HOME/.gdbinit文件中,每次启动gdb时就可以自动加载了。下面的代码是从网上摘录的,直接复制到$HOME/.gdbinit文件中就可以了。原文(http://silmor.de/46) defineprintqstring printf "(QString)0x%x (length=%i):\"",&$arg0,$arg0.d->size set $i=0 while $i size set $c=$arg0.d->data[$i++] if $c 127 printf "\\u0x%04x", $c else printf "%c", (char)$c end end printf "\"\n" end使用方法与print一样