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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

1、数组和函数之间的关系

     1)数组元素作为函数的实参

        int a[4]={1,2,3,4};

        //比较数组第一个元素和最后一个元素,它们的大小关系
        max(a[0],a[3]);  //数组元素作为函数的实参

        实质:

        把数组元素的值取出来,赋值给函数形参(值传递)

   
     2)数组名作为函数的实参

        //用数组名作为函数的实参,函数的形参也必须是一个数组

        //写一个函数实现,把数组的最后一个元素设置0


        void change(int b[4]);

        change(a);  //a数组名是常量 地址
                    //代表的一块内存空间

        int b[4];   //b存放的时数组b的首地址

        实质:b = a; //b存放的a的地址 (地址传递)

      3)数组名作为函数的参数的注意事项

         1)用一维数组名作为函数的形式参数,可以不指定数组长度

         int a[3]={1,2,3};
         change(a);

         void change(int a[]);

         2)函数的形参数组类型要和实参数组类型要一直

         int a[3]={1,2,3};
         change(a);

         void change(float a[])  (X)

         3) 实参的长度可以和形参数组长度不一致

         int a[3]={1,2,3};
         change(a);

         void change(int a[2]);  //可以的
   
         4)数组名作为函数的参数,会丢失数组的长度信息

4 个回复

倒序浏览
不错啊。
回复 使用道具 举报
支持下~
回复 使用道具 举报
沙睿 来自手机 中级黑马 2015-6-25 17:41:26
板凳
讲的很清晰,学习了...
回复 使用道具 举报
楼主说的不错学习了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马