网络看电视需要什么:谁帮我一下,C语言基础问题~~~~

来源:百度文库 编辑:查人人中国名人网 时间:2024/04/29 19:15:01
1、*P+3和*(P+3)有什么区别?

2、int (*p)[3]和int *p[3]各代表什么意思?

1
*p+3 是*p的值再加上3,例如:int a=5;*p=&a;那么执行此语句后的P的值为8
*(p+3)是P向后移3位后所指向的数值;
2
int (*p)[3]是建一个指向数组的p[3]的指针,如:(*P)[0]、:(*P)[1]、:(*P)[2]
int *p[3]是建一个有三个元素数组p,数组的每个元素都是一个整型指针,如:*P[0]、:*P[1]、:*P[2]

1
*p+3是相当于(*p)+3,返回的是*p的值再加上3的值,以数组为例,相当于p[0]+3;
*(p+3)是取p偏移3个单位后的值,如果是数组,相当于p[3];

2
int (*p)[3]是建一个指向数组的p,p指向的数组每行有三个元素。
int *p[3]是建一个有三个元素数组p,数组的每个元素都是一个整型指针

*P+3指针P下移3位
*(P+3)指针变量p加3后的新地址
int (*p)[3]这个我也不清楚
int *p[3]是数组指针中的一个指针

2
int (*p)[3]是建一个指向数组的p,p指向的数组每行有三个元素。
int *p[3]是建一个有三个元素数组p,数组的每个元素都是一个整型指针
对么?????????