A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 勇猛的小黑 中级黑马   /  2015-11-12 22:10  /  1175 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

①如果数组都没有初始化,到底有没有值?
        答:有值,全是不确定的垃圾值,
        ②如果数组进行的部分初始化。
                int a[10] = {1};//未初始化部分自动初始化为0
                int b[10] = {2.3f};//未初始化部分自动初始化为0
                char ch[10] = {'a','b','c'}//未初始化部分元素的ASCII码被自动初始化为0了。
                那么没有初始化的那部分的元素也自动被系统初始化为0
               
        特别强调:使用先定义后初始化的方式,系统就不会自动给没有初始化的元素赋0了。
       
        强调:数组名 代表数组的首地址。eg: printf("%p",a);这里的a不用加地址获取符号&
           但是数组中某一个值得地址就要加地址获取符号&  eg: printf("%p",a[0]);
          
          
        数组里边各个值得地址是连续的。
       
        知道数组的首地址,怎么计算数组第n个元素的地址。
        公式   
                int a[];
        第n个元素的地址 = 首地址+sizeof(int)*n

3 个回复

倒序浏览
顶顶顶顶啊!
回复 使用道具 举报
可以  不错
回复 使用道具 举报
顶,学习了啊。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马