多级指针简单demo:
main(){ int i = 5; int* p = &i; int** q = &p; int*** r = &q; printf(" i 的值=%d\n", ***r);//打印结果为5 }
函数指针demo:
int add(int x,int y){ printf("x+y=%d\n",x+y); } main(){ int (*pf)(int x,int y); pf = add; pf(3,6); }
c语言结构体:
使用struct关键字。
事例demo:
struct Person{ int age;//4 long id;//4 char sex;//1 //编译器对结构体的长度做了优化,会自动补齐成4个byte。需要注意。 } main(){ struct Person p = {20,1001}; printf(" age = %d\n",p.age); printf("结构体的长度 %d\n",sizeof(p)); }
c语言联合体:
使用union关键字。
c语言为了去复用一些内存空间,使用联合体。就是共用的内存空间。
联合体的长度,会根据它里面最长的数据长度相同。
c语言枚举类型:
使用enum关键字。
c语言中Typeof声明自定义数据类型。简化编程的操作。