黑马程序员技术交流社区

标题: c语言-数组学习笔记 [打印本页]

作者: xianglin123    时间: 2015-12-2 23:53
标题: c语言-数组学习笔记


一、数组:

    也是一种数据类型,它可以让自己类型的变量保存多个不同的值

     声明语法:

            类型 数组名[长度];

        例:int nums[3];

            char  chs[5];



    二、数组的初始化:

            1.先声明,后赋值

                类型 数组名[长度];

                数组名[下标] = 数据;



            例:  int  nums[3];

                  nums[0] = 10;

                  nums[1] = 123;

                  nums[2] = 321;

               

    注意:下标的最大数 = 长度-1

    如果超过则越界



            2.在声明的时候就初始化



                a.类型 数组名[长度] = {数据1,数据2,数据3......数据n};

                例: int nums[3] = {10,2,31};



                b.类型 数组名[] = {数据1,数据2,数据3......数据n};

                例: int nums[] = {3213,312,3122,233}; //长度为4

                    编译器会自动根据右边的数据个数来自动帮你判断长度



                c.类型 数组名[5] = {数据<5};

                例: int nums[5] = {1,2};

                    部分初始化,值从下标为0处开始给,其他没给到的下标处默认值都是0



                d. 类型  数组名[5] = { [下标] = 数据1,[下标] = 数据2....};

                    int nums[3] = {[2]=10,[0]=20.[1]=40};

                    下标为0的数据是 20

                    下标为1的数据是 40

                    下标为2的数据是 10

        注意:声明数组的时候,中括号里写的长度可以是变量,但是要注意,如果声明数组时中括号里写的长度是变量的时候,不可以同时初始化

         数组的长度一旦确定,不可改

    数组的长度计算公式:



            一段路,总长18米,每段长3米一共几段?  一共6段

                     总长 / 每段长  = 多少段

            一段路,每段长3米,一共6段,总长是?  18米

                     每段长 * 段数 = 总长

        数组长度的公式:  sizeof(数组名) / sizeof(类型);

                      数组占用总字节数  /  每个空间的字节数  ==  一共多少个空间



    数组的元素就是一个普通的变量

    数组作为函数的参数:

                如果在函数里面改了数组这个形参的值,会影响到实参。实参也会跟着改变



                因为函数内的形参数组和实参数组是共享的同一个空间



    值传递:

        简单来说就是形参的值发生了变化,不会影响到实参



    引用传递:

        就是形参的值发生了变化,实参也会跟着变化
作者: fengcommon    时间: 2015-12-3 12:46
总结的很好
作者: Flowerkanzhe    时间: 2015-12-3 12:49
这个很基础呀
作者: 不提也罢    时间: 2015-12-3 12:52
佩服你的耐心
作者: cherrycool    时间: 2015-12-3 16:03
加油! 继续努力!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2