C语言易忘知识记录复习

1.指针小结:*的优先级低于[],(),数组名就是首元素的指针,函数名也即函数的指针
 
  int i;     整形变量i
  int *p;    变量p为指向一个整型变量的指针
  int a[n];  定义含n个整型数值的数组a,a为数组名,即数组首元素的地址值,可写 p = a
  int *a[n]; 定义含n个指针元素的数组a,a为数组名,即数组首元素的地址值,可写 p = a,每个元素为指向一个整型变量的指针
  int (*p)[n]; p为指向含n个元素的一维数组的指针变量 性质跟int a[n];一样
  int f();int (*p)();   定义函数f和(*p) 这两种的性质一样,前者只是更适合做函数调用,后者更适合拿函数的指针来操作
  int *f(); 定义函数f,该函数返回一个指针,该指针指向一个整型变量
  int **p;  指向指针的指针

2. C语言数据类型
   基本数据类型:整型int、浮点型float(单精度)、double(双精度)、字符型char
   构造类型:枚举型、数组、结构体、共用体
   指针类型
   空类型 void
   其中枚举型:enum days{one,two,three};结构体:struct stutdent{int age;int year;};共用体形式与结构体一样,但整个所占内存大小为其中最长成员所占内存的大小

3. typedef 与define
   typedef用来定义新的数据类型:typedef 类型1 类型2;(末尾有分号,用类型2代表类型1,编译时)
   define同上:define 类型1 类型2 (末尾没分号,用类型1代替类型2,简单的字符串替换,预编译时)
 
原文地址:https://www.cnblogs.com/cnsec/p/11515850.html