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

2025-06-24 04:10:15

举个例子。

比如在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
相关阅读
如何评价张靓颖刘宇宁《九万字》?

如何评价张靓颖刘宇宁《九万字》?

终于集齐三大女神。 张靓颖的眼镜,戴与不戴真的是判若两人。...

2025-06-20
据说go和c#的开发者都说自己比较节省内存,你们认为呢?

据说go和c#的开发者都说自己比较节省内存,你们认为呢?

作为 C/C++ Developer,可以明确的告诉你:如果...

2025-06-20
MacOS真的比Windows流畅吗?

MacOS真的比Windows流畅吗?

可能真实的情况是这样: 1、Windows桌面无法保持长时间...

2025-06-20
***机关工作人员如何申请Windows电脑?

***机关工作人员如何申请Windows电脑?

别说机关工作人员了,我们科研人员都难申请到新的Windows...

2025-06-20
身体上的哪些迹象表明你正在衰老?

身体上的哪些迹象表明你正在衰老?

前段时间,许久不曾现身在大众面前的田馥甄罕见的接受了***访...

2025-06-20