在C / Linux中在没有磁盘I / O的情况下在Linux上自己的进程中读取调试/静态符号? 2024-09-08 • 问答 当我们假设整个程序(以及所有相关的.so文件)已被删除时,是否可以使用某些API通过地址读取自己的符号名? 我发现了一些如何使用objdump,readelf,nm等获取此信息的方法,但这不是一个选择。 我想要的是一个函数string get_symbol_at(uint64_t addr)。 puenshou 回答:在C / Linux中在没有磁盘I / O的情况下在Linux上自己的进程中读取调试/静态符号? ELF文件中的静态/调试符号以DWARF格式编码。可以通过分析调试信息来发现它们。但是,所有.debug_*节似乎都没有由操作系统(see加载未加载,因为它们很大且对程序执行没有用(它们仅在程序执行时才有用已调试)。 因此,答案是:当需要调试符号时,必须通过自己的力量从磁盘读取可执行文件。 cdebug-symbolslddlinuxsymbols 本文链接:https://www.f2er.com/2861901.html 大家都在问 已解答将 Python 程序转换为 C/C++ 代码?2023-03-20 已解答模块化算法和 NTT(有限域 DFT)优化2023-03-20 已解答初始化是否需要左值到右值的转换?是`int x = x;` UB 吗?2023-03-20 已解答cout<<调用它打印的函数的顺序?2023-03-20 已解答C++11 中 COW std::string 实现的合法性2023-03-20 已解答为什么我不能将 unique_ptr 推回到向量中?2023-03-20 已解答std::vector::resize() 与 std::vector::reserve()2023-03-20 已解答extern inline 有什么作用?2023-03-20 已解答在这种特定情况下,使用成员初始值设定项列表和在构造函数中赋值之间有区别吗?2023-03-20 已解答为什么模数除法 (%) 仅适用于整数?2023-03-20 已解答在 C++ 中测量函数的执行时间2023-03-20 已解答如何使用 Code::Blocks 链接到库?2023-03-20 已解答C++ 中的 int 和 long 有什么区别?2023-03-20 已解答如何将cin和cout重定向到文件?2023-03-20 已解答优化掉一个“while(1);"在 C++0x2023-03-20 已解答如何在只有受保护或私有构造函数的类上调用 ::std::make_shared?2023-03-20