堆栈溢出的一个问题
我在网上看到的,我以为答案是4,因为只有4才在栈里面,不过有人说答案是1,不知道为什么
下面使用那项可能会引起堆栈溢出
1.静态全局变量
2.动态全局变量
3.静态局部变量
4.动态局部变量
非常感谢,的确溢出了,不过有些原理还不是很懂,为什么在i=6的时候count才改变,为什么在i=57的时候才进入show(),你的那句array[i]=show我真的不是很懂,不好意思。
我查了内存,在array[2]跟count之间有8个字节 ,这是什么?
下面是我画的StackOverflow函数的内存图
+-+-+-+-+-+-+-+-+
| count | ---------->参数
+-+-+-+-+-+-+-+-+
| 4F 10 40 00 |
+-+-+-+-+-+-+-+-+
| 80 FF 12 00 |
+-+-+-+-+-+-+-+-+ \
| array[2] | |
+-+-+-+-+-+-+-+-+ |
| array[1] | >-------->动态变量
+-+-+-+-+-+-+-+-+ |
| array[0] | |
+-+-+-+-+-+-+-+-+ /