非计算机专业,好奇为什么会出现“程序依赖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
相关阅读
平面设计主KV做成这样,在你的城市薪资一般多少?

平面设计主KV做成这样,在你的城市薪资一般多少?

不要再内卷了。 你带你建好的模渲染好的图回到家并不能给你带...

2025-06-23
美国真会下场对伊朗开战吗?

美国真会下场对伊朗开战吗?

100%会下场,不信你们等着看,单靠以色列搞不定伊朗,只有美...

2025-06-23
乔丹背打的动哈登吗?

乔丹背打的动哈登吗?

老爷子看到这个问题,首先向你投来这个表情 然后向你甩出这...

2025-06-23
如何看待rust编写的zed编辑器?

如何看待rust编写的zed编辑器?

我觉得zed在做好一个编辑器的本职工作上 还是不错的 作为一...

2025-06-23
如何看待 Rust 的应用前景?

如何看待 Rust 的应用前景?

Rust对C++的威胁不威胁先放在一边,rustdoc文档功...

2025-06-23