1.任何C变量的声明都由两部分组成,类型以及一组类似表达式的声明符。
2.因为声明符与表达式类似,所以我们也可以在声明符中任意使用括号。
3.该类型的类型转换符得到方式:
只要把声明中的变量名和声明末尾的分号去掉,再将剩余的部分用一个括号整个封装起来即可。
4。(*fp())就调用fp所指向的函数的形式。
函数运算符()的优先级高于单目运算符*
5.对0进行做类型转换。
转换后的类型为 指向返回值为void类型的函数的指针。
void (*fp)() 则fp是指向返回值为void类型的函数指针。
则转换类型为 void (*)() 则将0强制转换(void(*)()) 0
6.可以使用typedef简化定义类型。
typedef vodi (*funcptr)();
(*(funcptr )0)();表示0地址的函数
7.运算符的优先级
前述,单目,双目,三目,赋值,逗号
其中三目,单目,赋值是从右向左。
双目中 算术,移位,关系,逻辑(逻辑按位大于顺序)
8.case如果没有break语句,应该用分号说明。
9.在函数调用时即使函数不带参数,也应该包括参数列表。
10.else始终与统一对括号内最近未匹配的if结合。