一维数组、二维数组与指针(reverse函数举例)C语言入门

欢迎关注笔者,你的支持是持续更博的最大动力

一维数组与指针(reverse)

数组的名字是一个指针常量,指向数组的起始地址。

一维数组定义:T a[N];
表示有N个元素的数组a。

  • a是一个指针,类型是T *
  • 编译时就对a确定了常量,不能对a进行赋值
  • 可以用a给一个T * 类型的指针赋值,使得被赋值的指针,指向a数组的起始地址
  • 数组a起始地址:a[0]的地址

数组a的大小 = 元素类型的大小 × \times ×元素个数
sizeof (a[N]) = sizeof(T) × \times ×N

T * pT p[ ] 等价:

  • 指针可以用下标运算符“[ ]”进行运算,p[n] 等价于 *(p+n)
  • p[n]: p[0]的地址 + n × \times ×sizeof (T)

代码举例

举例1

int main (){
   
    int a[200]; int *p;    //a类型:int *;p类型:int *
    p = a;                 //p指向数组a的起始地址,p[0]地址 = a[0]地址
    *p = 10;               //a[0] = 10; p[n] 等价于 *(p+n), *p等价于*(p+0)等价于p[0]
    *(p+1) = 20;           //a[1]= 20; p[n] 等价于 *(p+n), *(p+1)等价于p[1]
    p[0] = 30;             // a[0] = 30
    p[4] = 40;             // a[4] = 40
    for (int i = 0 ; i < 10;
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值