指针数组(指针类型的数组)

概念:指针数组是数组用来存放指针

  1. 指针类型的数组,首先是数组,数组元素存储的都是指针

  2. 数组名在表达式中会转换为数组首元素的首地址

  3. 对数组名使用sizeof关键字或对数组名取地址 &数组名 不会转换首元素的首地

代码示例1:

#include <stdio.h>
int main()
{

int arr[10]={0}; //整型数组
char ch[5]={0};//字符数组
int *parr[4]; //存放整型指针的数组-指针数组  其中parr代表首元素地址
char *pch[5];存放字符指针的数组--指针数组 pch代表首元素地址
}

代码示例2:

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main() 
{
	int arr1[7] = { 1,2,3,4,5,6,7 };
	int arr2[7] = { 8,9,10,11,12,13,14 };
	int arr3[7] = { 15,16,17,18,19,20,21};
	int* arr[3] = { arr1,arr2,arr3 };  //代表各数组的首元素地址
	int i = 0;
	for (i = 0; i < 3; i++)
	{  
		int j = 0;
		for (j = 0; j < 7; j++)
		{
			printf("%d",*(arr[i] + j) );   
			//arr[i]代表(arr1 arr2 arr3的首元素地址)+j代表表示指针打印该行的第几列 
			//也就是j个int型的步长
		}
		printf("\n");
	}



}

int* arr1[10];//整形指针的数组

char *arr2[4];//一级字符指针的数组

char **arr3[5];//二级字符指针的数组

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值