获取调用栈的大小
Getting the size of the callstack
是否有一种方法可以获得c++中调用堆栈的大小(以字节为单位)?
或者至少它的底部地址(然后我可以从ESP寄存器中减去它?
StackWalk64()
http://msdn.microsoft.com/en-us/library/ms680650 你可以尝试使用两次VirtualQuery。
第一次可以使用堆栈上任意值的地址来获得已提交堆栈空间的基址和大小(以字节为单位)。
从基址中减去大小并再次调用VirtualQuery。通过这种方式,您可以获得为堆栈保留的空间。
相关文章:
- 从python中调用C++函数并获取返回值
- 将尾部调用void(i32,..)位转换为llvm::函数以获取FnAttribute
- 获取从C++中同一类中的构造函数调用的方法返回的值
- 调用CreateProcess()并获取字符串的返回值
- 如何从二进制文件中的给定符号中获取调用程序图
- 从返回 std::optional of std::vector 的函数中获取结果到调用方
- 如何获取列表的每个对象并调用getName方法来打印其名称
- 如何使用 C/C++ 和 system() 系统调用以外的其他方法在 Linux 中获取文件功能?
- 如何获取有关在 Clang LibTooling 中调用析构函数的信息?
- 如何从不同的类中获取函数来调用在 Main 中声明的对象?
- 如何在C++中获取lua函数作为参数,然后调用它
- 无法调用未来::获取存储在地图中的未来
- 使用单独的参数调用"boost::process::system()"时,获取"execv
- C++11 - 获取编译时的所有类变量,并在没有 Boost 的情况下为它们调用方法
- 是否可以获取将根据 ADL 调用的函数的 decltype?
- 有没有办法使用 win32 API 调用获取 MachineGuid(而不是从注册表中读取它)
- 无法从"g++"调用获取输出结果
- 通过 WinSock2 API 的单次调用"recv()"函数调用获取全部接收字节
- 修改从定位调用获取的扩展DCEL
- 通过FindItem SOAP调用获取RecurringMaster ID