根据我的知识,局部变量是未初始化的,即它包含垃圾值。 但是下面的程序给出0(零)作为输出。
main() { int i; printf("%d\n",i); }当我在程序之上运行它总是给出0.我知道0也可以是垃圾值,但每次我得到零作为输出。 任何人都可以知道它的原因吗?
According to my knowledge, local variables are uninitialized i.e, it contains garbage value. But following program is giving 0 (zero) as output.
main() { int i; printf("%d\n",i); }When i run above program it is giving always 0. I know that 0 is also can be a garbage value but every time i am getting zero as output. Can anybody know reason for it?
最满意答案
当我在程序之上运行它总是给出0.我知道0也可以是垃圾值,但每次我得到零作为输出。
无论发生什么原因导致0被写入i现在可能在每次程序运行时发生的位置。 计算机很好,也很可靠。 “垃圾”并不一定意味着“随机”或“总是在变化”,它只是意味着“在我关心的任何环境中都没有意义”。
When i run above program it is giving always 0. I know that 0 is also can be a garbage value but every time i am getting zero as output.
Whatever happened to cause a 0 to be written into the location where i is now probably happens every time the program runs. Computers are nice and reliable like that. "garbage" doesn't necessarily mean "random" or "always changing," it just means "not meaningful in any context that I care about."
更多推荐
发布评论