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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

以下面的程序为例:

#include<stdio.h>
void test(int arr[2]){
        printf("arr = %p\n",arr);
        arr[0]=100;
}       
        int main(){
        int a[2] = {3,4};
        printf("a = %p\n",a);
        test(a);
        printf("a[0] = %d\n",a[0]);
        return 0;
}

       \\运行结果:a = 0028FF40
                        arr = 0028FF40
                        a[0] = 100
         分析: 此时arr没有被分配存储空间,而是arr和数组名a指向同一个内存空间,即a通过函数test()将地址传给了arr。这说明用数组名作为函数参数时,传递的是地址。

2 个回复

正序浏览
很好哦!学习了
回复 使用道具 举报
楼主总结的很详细,学习了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马