C语言函数库详解(收藏)
Please enter any key for a interupt a
This is a SIGSEGV interupt!
9. <stdarg.h>:可变参数表
可变参数表<stdarg.h>中的宏是用来定义参数可变的函数的。在C语言中,有些库函数或者用户自定义的函数的参数是可变的,常用省略号“ ”printf),定义这样的函数就要使用到<stdarg.h>中的宏。 1、va_list
用于保存宏va_start,va_arg以及va_end 2、<stdarg.h>中还定义了三个宏 void va_start(va_list ap, parmN); type va_arg(va_list ap,type); void va_end (va_list ap);
va_start的作用是初始化ap,因此va_start(除了用va_list定义变量外),后面的。在一对va_start和va_end之间不能再次使用va_start宏。例如, printf函数定义为:printf(const char *format, ...); va_start使用之后, parmN 的值就等于*format。
va_arg的作用就是返回参数列表ap, 每次调用va_arg都会修改ap的值, type类型的参数。
va_end与va_startscope,标志着结束,va_end之后ap就无效了。
1、2、 iz-ttype定义的结构类型的开头到结构成员的偏移字节数。 3、ptrdiff_t
表示两指针之差的带符号整数类型。 4、size_t
表示由sizeof运算符计算出的结果类型,它是一个无符号整数类型。 5、wchar_t
它是一种整数类型,取值范围为在被支持的地域环境中最大扩展字符集的所有字符的各种代码,空字符代码值为0。
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库C语言函数库详解(收藏)(11)在线全文阅读。
相关推荐: