全局变量与可移植性
慎用全局变量除了全局控制控制参数。
1 可以传参数进来,return 出去
2 函数内部用到的不死变量,模块内部用到的函数都用static修饰。而对外只提供模块封装好的输出函数。
3 一个模块中用到的全局变量超过3个就用结构体封装起来,省的丢三落四而且清晰明了。此外函数内部的静态全局变量、静态全局数组不占用栈空间,用超了会报警的。可以放心用。
可移植性:
1 善用difine 将裸露的常量 设备IO等用准确的大写字母定义出来。
2 将严重依赖平台的一些代码用函数抽象出来。
3 创造自己的库函数。
4 数据类型,通信格式统一。