标签:
1、函数指针类型定义,然后指针结构体类型定义,最后的调用形式为aaa.bbb();(aaa为结构体变量)或者
aaa->bbb();(aaa为结构体指针),函数指针最好用结构体封装起来变成指针结构体,可封装多个类型不同
的函数指针合成一个结构体。
2、常用宏函数的封装
3、事件位宏定义的使用
4、结构体的定义,成员为结构体,构建更加复杂的数据结构。
5、在头文件中使用extern声明外部变量与外部函数。
6、使用预编译宏开关控制头文件的包含与否与语句的编译与否。
7、位段的使用可以节省ram空间。
8、枚举变量默认从0开始递增,也可以从中某个开始赋值为其他数值,后续重新递增。
9、头文件中放一些宏定义、数据结构类型定义、外部变量声明、外部函数声明。
10、源文件中放宏定义、数据结构类型定义、静态变量、静态函数声明、函数实现。
11、函数的本质是3大程序结构——顺序结构、循环结构、选择结构,这几种结构混合构成了程序。
12、字符串指针常量数组
13、外部变量在头文件中加上extern表示声明(声明,不能初始化),在源文件中定义变量(定义,可初始
化可不初始化)。
14、头文件中声明,函数前加extern表示声明,变量前加extern表示声明。
15、定义并初始化结构体时,给结构体成员赋值,成员名前加个点,表示赋值。如下所示:
{
.pinSDA = Board_SDA,
.pinSCL = Board_SCL
}
标签:
原文地址:http://www.cnblogs.com/jxndsfss/p/5193450.html