我剛剛安裝了最新發布的gdb-gdb7.5當我用它來調試用utf-8編碼的C++程序時,我設置了gdb使用命令「set charset utf-8」將字符集轉換爲utf8。但是當我想打印一個字符串:char *str = "明天是個好天氣"
時,「p str」結果是字符串的地址而不是內容。那麼是否有必要讓gdb調試utf8字符串?gdb7.5 print utf8 string顯示字符串地址不是字符串內容
斷點1,測試()在TEST.CPP:6
6字符* STR = 「我們的世界多麼美好」;
(GDB)N
8的printf( 「%S \ n」 個,STR);
(GDB)p STR
$ 1 = 0x40067c 「0 \ 221們2 \ 204265 \16好」
(GDB)設置的字符集UTF-8
(GDB)顯示的字符集
主機字符集是「UTF-8」。 目標字符集是「UTF-8」。 目標寬字符集是「auto;目前UTF-32」。
(GDB)p STR
$ 2 = 0x40067c
(GDB)
@RedLv請把這個變成你的問題(包含格式),並刪除您的評論。 –