一维数组的基本知识总结

//一维数组的基础知识

//1>数组中的每个元素的地址是连续的

//2>数组名的地址是数组首元素的地址

//3>数组名是一个常量,其地址不可以改变

//4>数组中首元素的值可以改变

//5>数组的元素是变量

//二 一维数组长度的计算方法

//1.len=sizeof(数组名)/sizeof(数据类型)

//sizeof(数组名)算的是数组的总字节数

//三 把数组中的某个元素作为函数的参数

//其实就是跟基本类型的一样

//注意:如果函数的参数要求传入的是一个数组,那么传入数组元素就会报错

//如果是数组元素作为函数的参数,是值传递

//四 值传递与地址传递

//值传递:是把实参传给行参,实现的单向传递

//地址传递:传递的是数组的地址,在函数内部改变了值,那么外部也会改变,等于共享了内存空间

/*运行结果

 数组名的地址是:

0x7fff5fbff7d0

 0x7fff5fbff7d0

 0x7fff5fbff7d4

 0x7fff5fbff7d8

 0x7fff5fbff7dc

 数组长度len=4

 总字节数=16

 9

 返回之后的值9

 Program ended with exit code: 0

 */

#include <stdio.h>

int pass(int a[],int len){

    a[0]=9;//在函数内部改变值

    printf("%d\n",a[0]);

    return a[0];

}

int main(int argc, const char * argv[]) {

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

        printf("数组名的地址是:%p\n",a);

    for (int i=0; i<4; i++) {

         printf("%p\n",&a[i]);

    }

    int len=sizeof(a)/sizeof(int);

    printf("数组长度len=%d\n",len);

    int total=sizeof(a);

    printf("总字节数=%d\n",total);

  //  pass(a[1]);//值传递

   pass(a,4);//地址传递

    printf("返回之后的值%d\n",a[0]);

    return 0;

}

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值