编码中0的技巧
来源:互联网 发布:数据为王颠覆营销 编辑:程序博客网 时间:2024/05/16 09:32
【技巧一】
#if 0//Code here#endif用于方便地注释不愿意舍弃的代码,将0改为1又可以重新启用这部分代码。
ps:频繁地注释和启用某一段代码进行某项测试任务时,相当有用。
【技巧二】
sleep(0);用于让出CPU时间片。
【技巧三】
do{//Code here}while(0);a、用于出错资源释放处理,减少代码冗余,避免使用goto语句;
b、用于宏函数定义中,提高健壮性,例如:
#define SAFE_FREE(p) do{free(p); p = NULL; }while(0)#define SAFE_FREE(p) {free(p); p = NULL; }前者比后者好,是因为C/C++程序员习惯在每个语句后加‘;’,如果SAFE_FREE(p)被定义为后者,则如下代码编译过不了:
if(NULL != p)SAFE_FREE(p);else dosomething; //Compile error!ps:虽然建议if-else每个分支都加大括号,但是并不能保证人人都这么做!
【技巧四】
//文件信息列表头结构typedef struct {ulong ulOffset;ulong ulFileSize;}ET_FILE_INFO;typedef struct{ uint uiProgramNum; uint uiParaNum; ET_FILE_INFO tFileInfo[0]; //所谓的柔性数组成员}ET_FILE_INFOHEAD;ps:柔性数组成员允许结构末尾包含一个大小可变的数组,这个在形式上长度为0的数组不在运算符sizeof的计算范围之内。
【技巧五】
待补充……
- 编码中0的技巧
- .net常用的编码技巧
- JavaScript的几个编码技巧
- 特征编码的一些技巧
- 编码技巧
- 编码技巧
- 标准的ASCII标点符号编码和编码技巧
- 常用的vs编码技巧2
- 前台页面编码的使用技巧
- 高效的Go语言编码技巧
- 视频编码中CBR编码和VBR编码的区别
- 视频编码中CBR编码和VBR编码的区别
- mysql中编码的设置
- 编码中迷茫的鱼
- 编码中迷茫的鱼
- 编码中迷茫的鱼
- 编码中迷茫的鱼
- 编码中迷茫的鱼
- 解决问题:阻止ie浏览器总是显示“脚本通常是安全的,是否允许运行脚本”
- MC9S12XET256之EETS4K
- 【黑马程序员】java1.5新特性-----可变参数,静态导入,高级for循环及享元设计模式
- MC9S12XET256之ECT模块(1)
- 获取服务端SSL证书,并安装
- 编码中0的技巧
- vtigercrm 常用网址
- ios电子书工具之Xilisoft PDF to EPUB Converter
- android 制作自己的vendor
- 使用JSTL回显Select中的内容
- java各种数字类型与字符串的转换
- 北京 儿童喜欢的博物馆
- MC9S12XET256之ECT模块(2)
- [LeetCode] Length of Last Word