要点总结
1.RETAILMSG (Windows CE 5.0)
This macro conditionally outputs a printf-style formatted message.
这个宏有条件地输出一个printf风格格式化的消息。
http://msdn.microsoft.com/en-us/library/aa451087.aspx
2.GetCurrentThread function
Retrieves a pseudo handle for the calling thread.
检索一个伪句柄来调用线程
http://msdn.microsoft.com/en-us/library/windows/desktop/ms683182(v=vs.85).aspx
3.系统错误代码
ERROR_SUCCESS
0 (0x0)
The operation completed successfully.
0000
操作已成功完成。
4.宏定义
"#ifdef 语句1
程序2
#endif“
可翻译为:如果宏定义了语句1则程序2。
作用:可以用它区隔一些与特定头文件、程序库和其他文件版本有关的代码。
#if 表达式
程序段1
#else
程序段2
#endif
作用:当指定的表达式值为真(非零)时,就编译程序段1,否则编译程序段2。可以事先给定一定条件,使程序在不同的条件下执行不同的功能。
5.ini文件
.ini 文件是Initialization File的缩写,即初始化文件。是windows的系统配置文件所采用的存储格式,统管windows的各项配置,一般用户就用windows提供的各项图形化管理界
面就可实现相同的配置了,但在某些情况,还是要直接编辑.ini。
6.extern
extern可以置于变量或者函数前,以表示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。另外,extern也可用来进行链接指定。
在一个源文件里定义了一个数组“char a[6];”,在另外一个文件里用下列语句进行了声明,“extern char *a;”。这样的做法是错误的,程序运行时会告诉你非法访问。原因在于,
指向类型T的指针并不等价于类型T的数组。extern char *a声明的是一个指针变量而不是字符数组,因此与实际的定义不同,从而造成运行时非法访问。应该将声明改为extern
char a[ ]。