How to inspect std::string in GDB with no source code?

后端 未结 2 799
别那么骄傲
别那么骄傲 2020-12-23 21:58

I\'m trying to debug a program that has no source code available, and I need to look at what it has stored in a std::string. I\'ve been Googling and looking on here, and I\'

相关标签:
2条回答
  • 2020-12-23 22:25

    Perhaps the easiest option is to use the c_str method, as in:

    print myStr.c_str()
    
    0 讨论(0)
  • 2020-12-23 22:51

    Every std::string implementation has a pointer to the raw characters in it somewhere. For g++ 4.x, that pointer is at offset 0 into the string.

    If you know that the string resides at e.g. 0x7fffffffda88, then

    print *(char**)0x7fffffffda88
    

    is what you need.

    0 讨论(0)
提交回复
热议问题