以下内容为自学笔记缺乏严谨性,如有错误和不足请大佬指正
(1)typedef的基本用法?
起别名,类型的再定义
typedef int INTEGER;
这样可以增强代码可读性
(2)typedef定义数组指针与函数指针的方式?
typedef int* P_INT;//typedef定义指针
typedef int(*P_INT_5)[5];//typedef定义数组指针
typedef int(*P_INT_3_4)[3][4];//typedef定义二维数组指针
typedef double (*P_SQRT)(double);//typedef定义函数指针
int main(){
int arr[5] = { 1,2,3,4,5 };
int arr2[3][4] = { {1,1,1,1},{2,2,2,2},{3,3,3,3} };
//正常定义格式
int* p = &a;
int(*p_int_5)[5] = arr;
int(*p_int_3_4)[3][4] = arr2;
double (*p_sqrt)(double) = sqrt;
//typedef简化后
P_INT p1 = &a;
P_INT_5 p2 = arr;
P_INT_3_4 p3 = arr2;
P_SQRT pfun = sqrt;
}
typedef还有个用处就是
typedef int* P_INT;
int* m1, m2, m3;//只有m1是int*,m2,m3是int
P_INT n1, n2, n3;//全部为int*类型
(3)typedef的嵌套定义指什么?
这里INT INTEGER integer 代表的都是int
typedef int INT;
typedef INT INTEGER;
typedef INTEGER integer;
int a,b;
INT a,b;
INTEGER a,b;
integer a,b;