您的位置:首页 > 编程语言 > C语言/C++

C语言可变参数的函数

2010-04-09 10:30 309 查看
样例代码如下:

#include <stdio.h>
#include <stdarg.h>
// gcc -o arg stdarg.c
void Print(const char *fmt, ...)
{
	char text[256];	// 保存字符串
	va_list ap;		// 指向一个变量列表的指针
	
	if (fmt == NULL)
		return;
	
	va_start(ap, fmt);	// 分析可变参数
	vsprintf(text, fmt, ap);	// 把参数值写入字符串
	va_end(ap);
	printf("%s", text);	// 打印字符串
}

int main()
{
	int a = 100;
	char *b = "abc";
	double c = 123.0;
	
	Print("xiaoshe:/n");
	Print("%d %s %.6f/n", a, b, c);
	return 0;
}


在linux下编译:gcc -o arg stdarg.c,运行:./arg

结果输出为:

xiaoshe:

100 abc 123.000000





(在VC++下同样可以编译运行)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: