I'm OWenT

Challenge Everything

#
  • Home
  • Archives
  • About
  • RSS订阅

C++小协程栈和临时变量及作用域的栈溢出问题分析

背景

近期在给一个项目换一些底层接口的日志处理部分。把原始的类 printf 的格式化方式换成 fmtlib / C++ 20 Text Formatting 的方案。

然后发现,替换完一段未执行的代码后,会发生内存写坏的情况。

问题分析

通过跟踪生成的汇编和 gdb 的 info frame 位置。发现替换之后,栈帧位置大幅增加了。比如对这类代码:

更多
2025-08-02
知识共享许可协议2026 OWenT 沪ICP备2022003252号  本站源码, 发布者 Hugo, 主题 distinctionpp