非计算机专业,好奇为什么会出现“程序依赖bug运行”的情况?

2025-06-25 01:20:11

举个例子。

比如在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返回了;那么下游的使用者还真就能读到里面的值——内存是被收回了,但数据仍然在内存条上…。

非计算机专业,好奇为什么会出现“程序依赖bug运行”的情况?
广告位810*200
相关阅读
vue + tsx 的开发体验能追得上 react+tsx么?

vue + tsx 的开发体验能追得上 react+tsx么?

站在2025年6月这个时间点,我觉得相当不错,用vue+ts...

2025-06-24
目前最流行的 rust web 框架是什么?

目前最流行的 rust web 框架是什么?

代码仓库 gitee 创建项目cargo new rust-...

2025-06-24
2025 国内公司前端团队都在搞些什么?

2025 国内公司前端团队都在搞些什么?

经历裁员重组,就我一个纯前端了 这一个月没啥事,乱七八糟的研...

2025-06-24
055万吨驱逐舰是不是有些被过于神化了,有没有了解的大佬详细解释一下?

055万吨驱逐舰是不是有些被过于神化了,有没有了解的大佬详细解释一下?

055,美航母,相距1000公里 双方同时发现对方。 05...

2025-06-24
自由泳是真的很累啊,怎么办?

自由泳是真的很累啊,怎么办?

自由泳分为两个流派,一个是竞技流派,另一个是业余爱好者,想要...

2025-06-24