原文: http://blog.chinaunix.net/uid-725631-id-3493.htmlhtml
調試gcc時總是不能顯示全字符串
(gdb) p cp->spec
$35 = 0x8057080 "%{E|M|MM:%(trad_capable_cpp) -lang-c %{ansi:-std=c89} %(cpp_options)} %{!E:%{!M:%{!MM:\t %{save-temps:%(trad_capable_cpp) -lang-c %{ansi:-std=c89}\t\t%(cpp_options) %b.i \n\t\t cc1 -fpreprocessed %"...
上網找無果,猜猜gdb中有一個值來控制顯示多少吧?
直接看gdb源碼,發現果真有.
可使用set print elements命令來控制顯示字符串最多字符數,默認是200.
(gdb) set print elements 0
(gdb) p cp->spec
$36 = 0x8057080 "%{E|M|MM:%(trad_capable_cpp) -lang-c %{ansi:-std=c89} %(cpp_options)} %{!E:%{!M:%{!MM:\t %{save-temps:%(trad_capable_cpp) -lang-c %{ansi:-std=c89}\t\t%(cpp_options) %b.i \n\t\t cc1 -fpreprocessed %b.i %(cc1_options)}\t %{!save-temps:\t %{traditional|ftraditional|traditional-cpp:\t\ttradcpp0 -lang-c %{ansi:-std=c89} %(cpp_options) %{!pipe:%g.i} |\n\t\t cc1 -fpreprocessed %{!pipe:%g.i} %(cc1_options)}\t %{!traditional:%{!ftraditional:%{!traditional-cpp:\t\tcc1 -lang-c %{ansi:-std=c89} %(cpp_options) %(cc1_options)}}}} %{!fsyntax-only:%(invoke_as)}}}}"ide