全局变量与静态变量没有初始化或初始化值为0时,都放在.bss段会产生一个问题:
假如说我们定义一个全局的变量 int a = 0;我们知道这是一个初始化值为0 的全局变量,那么他会被放在.bss段,由于存储在bss段内的数据在下一次启动代码时不会被自动的重新初始化为0(即bss段清0),这就可能导致上一次运行代码过程中有可能修改了全局变量或静态变量的值,而修改过的值会被bss段保存下来,那么在下一次启动代码事我们定义的那个全局变量的值就可能不是我们第一次定义的 “0”值了,这样的话就有可能导致一些问题。