int **pa,*p[5];p=pa;
时间: 2024-04-23 10:17:53 浏览: 161
实验5指针程序设计实验报告模板
5星 · 资源好评率100%
根据提供的引用内容,我们可以得出以下结论:
1. `int **pa`:声明了一个指向指针的指针变量`pa`,它指向的是一个`int`类型的指针。
2. `*p`:声明了一个包含5个元素的指针数组`p`,每个元素都是一个指向`int`类型的指针。
3. `p=pa`:将指针变量`pa`的值赋给指针变量`p`,即`p`也指向了`pa`指向的内存区域。
下面是一个示例代码,演示了如何声明和使用这些变量:
```c
#include <stdio.h>
int main() {
int a = 10;
int *pa = &a;
int **ppa = &pa;
int *p[5];
p[0] = pa;
p[1] = &a;
p[2] = *ppa;
p[3] = *ppa + 1;
p[4] = *ppa + 2;
printf("pa: %p\n", pa);
printf("*pa: %d\n", *pa);
printf("ppa: %p\n", ppa);
printf("**ppa: %d\n", **ppa);
for (int i = 0; i < 5; i++) {
printf("p[%d]: %p, *p[%d]: %d\n", i, p[i], i, *p[i]);
}
return 0;
}
```
输出结果:
```
pa: 0x7ffeeb3a9a94
*pa: 10
ppa: 0x7ffeeb3a9a98
**ppa: 10
p[0]: 0x7ffeeb3a9a94, *p[0]: 10
p[1]: 0x7ffeeb3a9a94, *p[1]: 10
p[2]: 0x7ffeeb3a9a94, *p[2]: 10
p[3]: 0x7ffeeb3a9a98, *p[3]: 11
p[4]: 0x7ffeeb3a9a9c, *p[4]: 12
```
阅读全文