(*p)[3]的理解

1、int(*p)[4];------p为指向含4个元素的一维整形数组的指针变量(是指针)
#include <stdio.h>
#include <stdlib.h>

int main()
{
int a[4]={1,2,3,4};
int (*p)[4];
p=&a;
printf("%d\n",(*p)[3]);
printf("%d\n",*p);
return 0;
}

2、int *p[4];-------定义指针数组p,它由4个指向整型数据的指针元素组成(是数组)
#include <stdio.h>
#include <stdlib.h>

int main()
{
int p[4];
int a=6;
p[1]=&a;
printf("%d\n",p[1]);
return 0;
}
int main()
{
int a[3][4]={0,1,2,3,4,5,6,7,8,9,10,11};
int (
p)[4]=a;
for(i=0;i<3;i++)
/输出二维数组中各个元素的数值/
{ for(j=0;j<4;j++)
printf("%3d ",
(*(p+i)+j));
}

#include <stdio.h>
int main()
{
int a[4] = { 1, 3, 5, 7 };
int(*p)[4];
p = &a;
printf("%d\n", sizeof§); //4字节
printf("%d\n", sizeof(*p));//16字节
printf("%d\n", sizeof(a)); //16字节
printf("%d\n", &a[0]);//16645296
printf("%d\n", p); //16645296
printf("%d\n", p[0]); //16645296
printf("%d\n", p[1]); //16645312
printf("%d\n", p[2]); //16645312
printf("%d\n", p[3]); //16645344
printf("%d\n", *p); //16645296
printf("%d\n", *p[0]);//1
printf("%d\n", *p[1]);//-858993460
printf("%d\n", *p[2]);//1
printf("%d\n", *p[3]);//0
printf("%d\n", (*p)); //16645296
printf("%d\n", (*p)[0]);//1
printf("%d\n", (*p)[1]);//3
printf("%d\n", (*p)[2]);//5
printf("%d\n", (*p)[3]);//7
// int *p[4];
// int a=6;
// p[1]=&a;
// printf("%d\n",*p[1]);//指针数组 演示

// int a[4]={1,2,3,4};
// int (*p)[4];
// p=&a;
// printf("%d\n",(*p)[2]);
// printf("%d\n",*p);//指向数组的指针

// int a[4]={1,3,5,7};
// int (p)[4],i,j; // 指针变量p指向包含4个整型元素的一维数组
// p=&a; // p指向二维数组的0行
// printf("%d\n",
(p+3));
// printf(“please enter row and colum:”);
// scanf("%d,%d",&i,&j); // 指定元素的行列
// printf(“a[%d,%d]=%d\n”,i,j,((p+i)+j)); // 输出a[i][j]的值
return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值