搜索
查看: 776|回复: 5
打印 上一主题 下一主题

定义一维数组时有意外发现

[复制链接]
跳转到指定楼层
楼主
发表于 2014-3-22 14:16:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
代码很简单
#include <stdio.h>

#include <stdlib.h>
int main()
{
        int a[8],i;
       for(i=0;i<=8;i++)
      {
        printf("%d\n",a[i]);
      }
        system("pause");
        return 0;
}
结果很惊奇
屏幕显示:
200909125
200909150
4200640
2293744
4200734
4200640
3538999
3145781
8
问题来了,我没有给a[i]赋值,怎么自己会有数值?

最佳答案

查看完整内容

对于一个局部变量,赋值前的值是未定义的 一般的编译器实现是,分配的内存区域残留了什么值,就是什么值
沙发
发表于 2014-3-22 14:16:07 | 只看该作者
对于一个局部变量,赋值前的值是未定义的
一般的编译器实现是,分配的内存区域残留了什么值,就是什么值
板凳
发表于 2014-3-22 18:45:53 | 只看该作者
额~~建意这样写int a[8]={};
地板
发表于 2014-3-23 20:18:38 | 只看该作者
系统随机出的,因为你没赋值
5#
 楼主| 发表于 2014-4-5 21:23:07 | 只看该作者
竟然有此事
6#
发表于 2014-4-7 13:26:14 | 只看该作者
呵呵,啊哈c教程上应该有的吧
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表