摘要: 如何保证某个函数只被调用一次 一个函数caller会在其内部调用另外一个函数callee,现在的情况是,caller可能会在多个地方被多次调用,而你希望callee只在第一次被调用时被调用一次。一般情况下,callee会是一个对环境或者资源的初始化工作。 或许,从代码结构的角度来讲,你第一个想到的是 阅读全文
posted @ 2016-02-07 03:36 银月星 阅读(1035) 评论(3) 推荐(0) 编辑
摘要: 数组声明一次,所有的 定义声明 有切仅有一次! 别人遇到的问题如下: 在声明定义时,定义数组如下: int G_glob[100]; 在其他文件引用时声明如下: int *G_glob; 这样的操作,在vc中,是可以编译通过的,这种情况大家都比较模糊并且需要注意,数组与指针类似,但并不等于说对数组的 阅读全文
posted @ 2016-02-07 01:28 银月星 阅读(12480) 评论(1) 推荐(0) 编辑
摘要: 在使用 #include "math.h" 和 #include <math.h>时,引号 与尖括号的区别如下 此时math.h_1 在工程文件中 math.h_2 在系统文件中 使用 "" 时,优先搜索工程文件所在目录,然后搜索编译器文件所在目录 使用<>时,与上面相反。 阅读全文
posted @ 2016-02-07 01:17 银月星 阅读(584) 评论(0) 推荐(0) 编辑
摘要: #ifndef LABEL #define LABEL //代码部分 #endif LABEL为一个唯一的标号,命名规则跟变量的命名规则一样。常根据它所在的头文件名来命名,例如,如果头文件的文件名叫做hardware.h #ifndef __HARDWARE_H__ #define __HARDWA 阅读全文
posted @ 2016-02-07 01:12 银月星 阅读(315) 评论(0) 推荐(0) 编辑
摘要: 一、关于预处理 环境一: #ifdef _XXXX ...程序段1... #else ...程序段2... #endif 这表明如果标识符_XXXX已被#define命令定义过则对程序段1进行编译;否则对程序段2进行编译。 例: #define NUM #ifdef NUM printf("之前NU 阅读全文
posted @ 2016-02-07 00:32 银月星 阅读(205) 评论(0) 推荐(0) 编辑