摘要: 一、关于可变参数的函数定义方法 注:本节原文摘自互联网,笔者对它进行了必要的编辑和扩展。原作者尚未查知,在此表示歉意和感谢。 某些情况下希望函数的参数个数可以根据需要确定。典型的例子有大家熟悉的函数printf()、scanf()和系统调用execl()等。那么它们是怎样实现的呢?C编译器通常提供了一系列处理这种情况的宏,以屏蔽不同的硬件平台造成的差异,增加程序的可移植性。这些宏包括va_star... 阅读全文
posted @ 2010-01-21 11:10 傲衣华少 阅读(471) 评论(0) 推荐(0) 编辑
摘要: 注意:_VA_ARGS__ 从VS2005才开始支持===========在 GNU C 中,宏可以接受可变数目的参数,就象函数一样,例如:#define pr_debug(fmt,arg...) printk(KERN_DEBUG fmt,##arg)用可变参数宏(variadic macros)传递可变参数表你可能很熟悉在函数中使用可变参数表,如:void printf(const char*... 阅读全文
posted @ 2010-01-21 10:59 傲衣华少 阅读(2293) 评论(0) 推荐(0) 编辑