非计算机专业,好奇为什么会出现“程序依赖bug运行”的情况?
- 作者:admin
- 发表时间:2025-06-27 16:40:13
举个例子。
比如在c/c++语言里,这个写法是非法的,bug: int* fun(int nums[], size_t len) { int sth; char c1; float other; char c2; int tmpNum[len]; char str[len]; //do sth return tmpNum; }其中的tmpNum叫局部变量,它分配在栈上;当fun执行了return时,这块内存就被自动收回了,就不能再读写了。
但如果你不懂,你就是把tmpNum返回了;那么下游的使用者还真就能读到里面的值——内存是被收回了,但数据仍然在内存条上…。
最新文章
-
感觉鱼缸久了底下火山石里脏脏的,能彻底换水清理一遍不?
-
罗马仕宣布召回超 49 万台充电宝,极端场景下可能有燃烧风险,有多危险?为何有安全隐患的产品能够上市?
-
央行行长潘功胜首次在公开场合谈及稳定币,稳定币是什么?有何深意?
-
北京日报点名批评“苏超”过度娱乐化,它是否管的太宽了?为什么无良媒体不会被查封取缔?
-
字节大量使用新语言,包括go,rust等,为什么阿里一直都抱着j***a不松手?
-
什么时候你意识到做技术永无出路?
-
为什么没有核动力货轮?
-
为什么 macOS 并不差,可市场总敌不过 Windows?
-
墨脱水电站建设有什么进展?
-
Rust、Go、Zig、Dart、C3、C++、C,仓颉、moonbit、凹语言哪个语言更有未来?