//头文件
va_list arg 访问参数列表未确定部分
va_start(arg,val);//将 arg_ptr 设置为传递给该函数参数列表的第一个可选参数
arg是声明的变量名,val是已确定参数列表最后一个参数
va_arg(arg,int);//从 arg_ptr给出的位置检索 type 的值,并将 arg_ptr 指向列表中的下一个参数,使用 type 的范围确定下一个...
分类:
其他好文 时间:
2015-05-12 13:38:58
阅读次数:
120
c语言中用可变参数列表的原因cpp文件中参数可以初始化,则实参中用几个参数写几个,但是c中形参不可以初始化,所以引出可变参数列表,头文件为stdarg.h,使用宏stdarg
va_list类型 arg变量 eg:va_list arg
宏stdarg使用了三种宏
va_start(arg,val)初始化
va_arg(arg,int)读取
va_end(arg)结束...
分类:
其他好文 时间:
2015-05-12 13:36:08
阅读次数:
136
C函数要在程序中用到以下这些宏:
void va_start( va_list arg_ptr, prev_param );
type va_arg( va_list arg_ptr, type );
void va_end( va_list arg_ptr );
va_list:用来保存宏va_start、va_arg和va_end所需信息的一种类型。为了访问变长参...
分类:
编程语言 时间:
2015-05-12 09:27:33
阅读次数:
133
va_list arg;声明一个va_list 类型的变量arg,它用于访问参数列表的未确定部分;
va_start(arg,val);第一个参数是va_list的变量名,第二个参数是不确定参数的前一个参 数;
a_arg(arg,int);返回这个参数的值,并使用var_arg指向下一个可变参数,第一个参数是
...
分类:
其他好文 时间:
2015-05-11 21:53:08
阅读次数:
141
1 void plog(const char *fmt, ...) 2 { 3 va_list arg; 4 char pbString[256]; 5 va_start(arg, fmt); 6 vsprintf(pbString, fmt, arg); //若此行和下行改为:done = fp....
分类:
其他好文 时间:
2015-05-05 23:13:45
阅读次数:
165
1.在学习c语言,难免会遇到多参函数,刚好c中也提供了一些机制:宏函数#ifdef _M_ALPHAtypedef struct {char *a0; /* pointer to first homed integer argument */int offset; /* byte offset of...
分类:
其他好文 时间:
2015-05-03 20:34:47
阅读次数:
149
1、可变参数的函数
头文件中定义了一些宏,用于可变参数的函数,如下
va_list:这种类型声明局部状态变量,假设变量名为va(用于下面的描述),用于遍历函数。
va_start:这个宏初始化状态变量va,要先调用之后才能调用va_arg与va_end。
va_arg:这个宏返回参数表中下一个参数的值,将内部指针(在va中)移到下一个参数,下一个参数的类型要用type指定,使va_arg能...
分类:
其他好文 时间:
2015-04-23 09:37:11
阅读次数:
122
名称描述相容 // 作用描述va_start使va_list指向起始的参数 va_arg检索参数C89va_end释放va_listva_copy拷贝va_list的内容实例解析:#include #include void printargs(int arg1, ...) /* 输出所有in...
分类:
其他好文 时间:
2015-04-16 19:41:15
阅读次数:
115
va_list ap; //声明一个变量来转换参数列表 va_start(ap,fmt); //初始化变量 va_end(ap); //结束变量列表,和va_start成对使用 可...
分类:
其他好文 时间:
2015-04-07 23:16:40
阅读次数:
144
//实现一个简化的printf函数。
#include
#include
void my_printf(const char *str,...)
{
va_list arg;
//准备访问可变参数
va_start(arg,str);
while(*str != '\0')
{
switch(*str)
{
case 'c':
putchar( va_arg...
分类:
编程语言 时间:
2015-04-06 17:18:47
阅读次数:
184