C语言二维数组之数组指针

代码:https://gitee.com/hsjjsh123/eclipse-c

#ifndef __ARR_2_H__
#define __ARR_2_H__

//测试二维数组
void tets_arr_2();

#endif

#include <stdio.h>
#include <stdlib.h>
#include "arr_2.h"

//二维数组测试
void tets_arr_2(){
//   int a[] = {1,2};
//   int b[] = {3,4};
//   初始化
//  (数组里面全是地址)
//	 int *arr2[2] = {a,b};
   int arr2[2][3]= {{1,2,3},{3,4,5}};
   printf("a index 0:%d\n", arr2[0][0]);
   printf("a index 1:%d\n", arr2[0][1]);
   printf("b index 0:%d\n", arr2[1][0]);
   printf("b index 1:%d\n", arr2[1][1]);


   //本表面上是数组指针;
   ///使用按照指针数组理解//
   int (*a2p)[3] = arr2;

   //从指针数组角度使用(二维数组)
   printf("(pointer) a index 0:%d\n", a2p[0][0]);
   printf("(pointer) a index 1:%d\n", a2p[0][1]);
   printf("(pointer) b index 0:%d\n", a2p[1][0]);
   printf("(pointer) b index 1:%d\n", a2p[1][1]);

   //从指针数组角度使用,见:pointer_s.h、pointer_s.c
   printf("(数组里面全是指针)取arr2->b第二个,%d,%d,%d,%d\n",(*(a2p+1))[1],a2p[1][1],*(a2p[1]+1),*((*(a2p+1))+1));
}

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值