2010年1月20日

摘要: C语言中有些函数使用可变参数,比如常见的int printf( const char* format, ...),第一个参数format是固定的,其余的参数的个数和类型都不固定。但C又无法用面相对象的函数重载的概念。 不过好在C语言中定义了va_list, va_start( ), va_arg( ), va_end( ) 这样一组宏来处理可变参数问题。 这组宏在stdarg.h头文件中定义,但是由于1)硬件平台的不同 2)编译器的不同,所以定义的宏也有所不同,下面以VC++中stdarg.h里x86平台的宏定义为例(linux环境中在stdarg.h里发现它将这组宏定义为gcc的内建函数了. 阅读全文
posted @ 2010-01-20 01:44 哈呜 阅读(666) 评论(0) 推荐(0)

导航