pointer and array

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

void print(char *arr[],int len)
{
 for(int i=0;i<len;i++)    //输出各字符串
  printf("%d %s/n", (int)arr[i], arr[i]);
}

int main()
{

 int i = 0;
 int a[7][8][9];

 int b[9] = {1,2,3,4,5,6,7,8,9};
 int (*p)[9];    //声明了一个指针,指向有9个int型的元素的数组
 int *q[9];      //声明了一个数组,数组包含9个int型指针
 char *pn[]={"Fred","Barney","Wilma","Betty"};
 int num=sizeof(pn)/sizeof(char *);
 print(pn,num);

 

 p = &b;

 for (; i < 9; i++)

 {

     printf("%d %d ", (*p)[i], *(*p +i));

 }

 printf("/n");


 printf("the sizeof is %d of a/n", sizeof(a));
 //printf("the sizeof is %d of &a/n", sizeof(&a)); //&a is invalid
 printf("the sizeof is %d of (10,2)[a]/n", sizeof((10,2)[a]));
 printf("the sizeof is %d of a[0]/n", sizeof(a[0]));
 printf("the sizeof is %d of a[0][0]/n", sizeof(a[0][0]));
 printf("the sizeof is %d of a[0][0][0]/n", sizeof(a[0][0][0]));
 //printf("the sizeof is %d of &a[0][0][0]/n", sizeof(&a[0][0][0])); //&a[0][0][0] is invalid

 

 printf("the sizeof is %d of (*p)/n", sizeof((*p)));

 printf("the sizeof is %d of b/n", sizeof(b));

 printf("the sizeof is %d of p/n", sizeof(p));

 printf("the sizeof is %d of (*p)[0]/n", sizeof((*p)[0]));
 printf("the sizeof is %d of p[0]/n", sizeof(p[0]));
 printf("the sizeof is %d of (*p)[1]/n", sizeof((*p)[1]));
 printf("the sizeof is %d of (*p)[10]/n", sizeof((*p)[10]));
 printf("the sizeof is %d of (*p)[0]/n", sizeof((*p)[0]));

 

 printf("the sizeof is %d of *q/n", sizeof(*q));

 printf("the sizeof is %d of pn/n", sizeof(pn));

 printf("the sizeof is %d of q/n", sizeof(q));
 printf("the sizeof is %d of q[0]/n", sizeof(q[0]));
 printf("the sizeof is %d of q[1]/n", sizeof(q[1]));
 printf("the sizeof is %d of q[10]/n", sizeof(q[10]));
 printf("the sizeof is %d of *q[0]/n", sizeof(*q[0]));

 system("pause");
 return 0;
}

 

同时请参照飞天御剑流的CSDN的pointer and array文章

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值