說我有代碼:爲什麼gdb中的print命令爲C++ std :: strings返回 035?
std::string str = "random";
function(str);
void function (std::string str)
{
std::cout << str << std::endl;
}
如果我一步通過這個代碼在gdb,然後進入功能,並做p str
它會打印出這樣的事情\362\241
但COUT將輸出到屏幕上正確字符串random
。如果有的話,有沒有人看過這個,我該怎麼辦?我是否在gdb中使用了print命令,或者它與編譯器如何解釋字符串有關?
不\ 035解釋爲索引到ASCII表八進制三重? – evandrix 2011-01-28 16:02:00
我也在思考這些問題,但我無法弄清楚爲什麼,如何或如果這與問題有什麼關係 – Grammin 2011-01-28 16:04:17
如何超集:http://stackoverflow.com/questions/11606048/pretty-printing -stl-containers-in-gdb – 2017-04-12 08:00:16