排序
C语言 函数不定长参数 ##__VA_ARGS__经典案例
C语言 函数不定长参数 ##__VA_ARGS__经典案例 - __VA_ARGS__ 在前面的文章也介绍了,有两个缺点: 1.仅仅只支持字符串常量,不支持可变参数 #define LOGFUNC(...) (printf(__VA_ARGS__)) 2.仅仅...
C语言 extern “C”
C语言 extern 'C' - 在 C++ 出现以前,很多代码都是 C 语言写的,而且很底层的库也是 C 语言写的,为了更好的支持原来的 C 代码和已经写好的 C 语言库,需要在 C++ 中尽可能的支持 C ,而 exter...
C语言 __cplusplus
C语言 __cplusplus - __cplusplus 和 extern “C” 一般都是配对使用,我们在阅读程序时,经常会见到__cplusplus 关键字; 由于 C 和 C++ 毕竟是不同的,为了实现某个程序在 C 和 C++ 中都是兼容...
C语言 ##__VA_ARGS__
C语言 ##__VA_ARGS__ - C 语言中 __VA_ARGS__ 是一个可变参数的宏,是新的 C99 规范中新增的,目前似乎只有 gcc 支持( VC 从 VC2005 开始支持) #define edebug(format, ...) fprintf (stderr,...
C语言 __VA_ARGS__
C语言 __VA_ARGS__ - __VA_ARGS__需要配合 define 使用,总体来说就是将左边宏中 .. 的内容原样抄写在右边 __VA_ARGS__ 所在的位置; 注意:__VA_ARGS__ 只能是一些不含任何变量的字符串常量。如...
C语言 va_end 宏
C语言 va_start 宏 - C 编译器通常提供了一系列处理这种情况的宏,以屏蔽不同的硬件平台造成的差异,增加程序的可移植性。这些宏包括 va_start 、va_arg 、va_end 等,一般三者需要配套使用。 #i...
C语言 va_start 宏
C语言 va_start 宏 - C 编译器通常提供了一系列处理这种情况的宏,以屏蔽不同的硬件平台造成的差异,增加程序的可移植性。这些宏包括 va_start 、va_arg 、va_end 等,一般三者需要配套使用。 #i...
C语言 #运算符
C语言 #运算符 - 在 C 语言关于 define 的文章中我们有介绍到:凡是以 # 开头的均为预处理指令,预处理又叫预编译。预编译不是编译,而是编译前的处理。这个操作是在正式编译之前由系统自动完成...
C语言 __TIME__
C语言 __TIME__ - ANSI C 定义了许多宏。在编程中您可以使用这些宏,但是不能直接修改这些预定义的宏。 __DATE__ 当前日期,一个以 “MMM DD YYYY” 格式表示的字符串常量。 __TIME__ 当前时间...