C 语言再学习
来自Dennis的知识库
2017年1月5日 (四) 13:31Dennis zhuang(讨论 | 贡献)的版本
目录 |
从零开始的 JSON 库教程
第一节
- cmake 可以生成 xcode 项目: cmake -G Xcode
- 通常枚举值用全大写(如 LEPT_NULL),而类型及函数则用小写(如 lept_type
- 宏的编写技巧: 反斜线代表该行未结束,会串接下一行。而如果宏里有多过一个语句(statement),就需要用 do { /*...*/ } while(0) 包裹成单个语句。
- 测试框架使用了 __LINE__ 这个编译器提供的宏,代表编译时该行的行号。如果用函数或内联函数,每次的行号便都会相同。
- 关于 inline: http://blog.csdn.net/hanchaoman/article/details/7270345
第二节
- 提取重复代码,c 语言除了函数之外,宏是很重要的手段。
- 用 #if 0 ... #endif 去禁用代码是一个常用技巧,而且可以把 0 改为 1 去恢复。
- JSON 数字解析流程图
第三节
- man malloc 。 realloc 可以释放传入的指针所指向的内存,并分配新的。
- 我发现 c 语言提藏简洁代码。
- vector 或者其他数据结构的增长因子以小于 2 为佳,比如 1.5,为什么参考 https://www.zhihu.com/question/25079705/answer/30030883
- 对于很小的『函数』,直接利用宏内联是更习惯的做法。