C语言学习之指针进阶

    科技2024-06-13  73

    指针数组:int * p[10],其中p先与[10]结合,是一个数组,数组中的每个元素的类型是int * (整型指针)数组指针:int (*p)[10],由于()比[]优先级高,p先与*结合,p为一个指针,指向指向一个int [10]的数组(即一个包含10个整型元素的数组)函数指针:int (*p)(int, int),首先p是一个指针,指针指向的是一个函数,函数类型为int (int, int),即函数的两个参数为int型,返回值类型也为int型函数指针数组:int (*p[4])(int, int),首先p先与[4]结合,是一个包含4个元素的数组,每个元素的类型为int (*)(int, int),这是一个函数指针类型,所以p为4个元素的函数指针数组指向函数指针数组的指针:int (*(*p)[4])(int ,int),p首先与*结合,说明p是一个指针,再与[4]结合,p是包含4个元素的数组的指针,数组中的每个元素类型是int (*)(int, int),这是一个函数指针,参数类型为int, int,返回值也为int,所以p是一个指向函数指针数组的指针void * 类型(空指针类型): ①void *类型的指针可以接受任意类型的地址 ②void *类型的指针不能进行解引用操作,在进行解引用操作前必须强制类型转换
    Processed: 0.014, SQL: 8