c语言可变参数
#include <stdio.h>
#include <stdarg.h>
void test(int num, ...)
{
int i;
char temp;
va_list ap;
va_start(ap, num); // ap指向第一个参数
for(i = 0; i < num; i++)
{
temp = va_arg(ap, char); // ap从第一个可变参数开始,逐个向后移动
printf("%c ", temp);
}
printf("/n");
va_end(ap);
}
int main()
{
test(1, 'a');
test(2, 'a', 'b');
test(3, 'a', 'b', 'c');
return 0;
}
运行结果:
a
a b
a b c
#include <stdio.h>
#include <stdarg.h>
void test(int num, ...)
{
int i;
char temp;
va_list ap;
va_start(ap, num); // ap指向第一个参数
for(i = 0; i < num; i++)
{
temp = va_arg(ap, char); // ap从第一个可变参数开始,逐个向后移动
printf("%c ", temp);
}
printf("/n");
va_end(ap);
}
int main()
{
test(1, 'a');
test(2, 'a', 'b');
test(3, 'a', 'b', 'c');
return 0;
}
运行结果:
a
a b
a b c
本文通过一个具体的C语言程序示例介绍了如何使用可变参数列表。程序定义了一个名为test的函数,该函数接受一个整数参数num以及一系列可变参数,并通过va_list, va_start, va_arg和va_end等宏来遍历并打印这些可变参数。
1323

被折叠的 条评论
为什么被折叠?



