非计算机专业,好奇为什么会出现“程序依赖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
相关阅读
为什么感觉腾讯的风评越来越好了?

为什么感觉腾讯的风评越来越好了?

20年蛋壳公寓暴雷,所有住户被赶出了租房,腾讯的微众银行要求...

2025-06-26
为什么好多人不承认大众审美就是喜欢白皮?

为什么好多人不承认大众审美就是喜欢白皮?

看到这题的时候我就知道某些人会拿Mathura雕像说事。 利...

2025-06-26
RTX5060真的有那么不值吗?

RTX5060真的有那么不值吗?

因为 nvidia 在 PC 显卡领域实际上是一家独大以及事...

2025-06-26
看新闻说老美的B-2连续飞了37小时,飞行员的吃喝拉撒怎么解决?

看新闻说老美的B-2连续飞了37小时,飞行员的吃喝拉撒怎么解决?

B2和国道大运一样,有基本的生活设施,微波炉,床铺,卫生间都...

2025-06-26
为什么 CRT 画质这么好也被淘汰,液晶反而发展的很好?

为什么 CRT 画质这么好也被淘汰,液晶反而发展的很好?

crt受制于显像管技术,大了重量会更重,一般crt最大29,...

2025-06-26