1.什么是指针类型
2.什么是指针指向的类型
3.什么是
指针数组
数组指针
int *p[5]; int (*p)[5];有什么区别
1.指针是一种复合类型 既有自身的类型(一般为32位 4字节) 还有他所指向的类型 可以使int float 或者结构体类型
2.指针所指向的类型就是 int *p 也就是定义指针时候所使用的类型
3.指针数组 那就是数组里面的每个元素都是一个指针 比如说int *p[5] 数组指针 也就是指向数组的指针 int (*p)[5]
的意思就是定义p指向一个长度为5 元素类型为整形的数组
前四个在前面都已经解释了
接下来给你解释下这个int *(*ptr)[4]; 首先把 *ptr拿到最右边变成了 (int *[4]) *ptr
我前面右括号括起来的就是类型 后面就是定义指向这个类型的指针
那么前面的是什么类型呢 前面已经说过了 他是个指针数组
数组里面的每个元素都是指向整形数据的指针
说了这么多 其实楼主对于指针只要把指针数组 指向数组的指针
函数的返回值是指针
指向函数的指针
二级指针弄清楚就可以了
老杨还是那句话 C只是工具 帮你实现你的思想
工具不是最重要的 思想才是最重要的
适当的时候去看算法