第五次作业
一,笔记
二,代码
三,问题
1,二级指针的用途?
答;之所以定义二级指针**P,不是为了使用**P表示指向的值,而是为了使用*P来存储存储值的那个单元的地址。首先任何值都有地址 ,一级指针的值虽然是地址,但这个地址做为一个值亦需要空间来存放,是空间就具有地址 ,这就是存放地址这一值的空间所具有的地址,二级指针就是为了获取这个地址。
解决:网络查找
2 ,二级指针又分为指向指针变量的指针和指向数组的指针,那么这里的数组是指针数组吗?
答;是,因为二级指针是指向指针的指针。
3,int (*p)[4]和int *p[4]的区别·?
int *p[4]; //定义一个指针数组,该数组中每个元素是一个指针,每个指针指向哪里就需要程序中后续再定义了。
int (*p)[4]; //定义一个数组指针,该指针指向含4个元素的一维数组(数组中内每个元素是int型)。
4 指针数组与数组指针的区别?
可以用运算符优先级进行判断
数组指针 数组指针:是指一个指向数组的指针,它其实还是一个指针,只不过是指向数组而已;
定义 int (*p)[n];
()优先级高,首先说明p是一个指针,指向一个整型的数组。()优先级大于[].
指针数组 指针数组:是指一个数组里面装着指针,也即指针数组是一个数组;
定义 int *p[n];
[]优先级高,先与p结合成为一个数组,再由int*说明这是一个整型指针数组,它有n个指针类型的数组元素。p是数组名。
所以,注意:优先级:()>[]>*
PTA6-4三种方法;
为什么第三种只复制了第一个字符?
5,PTA函数5 6题没思路