main.cpp

来自「用C语言实现参数个数可变的函数 用C语言实现参数个数可变的函数」· C++ 代码 · 共 42 行

CPP
42
字号
/* main.cpp */

#include "stdio.h" 
#include "string.h" 
#include "stdarg.h"   /* 实现变参参数时必须包含该头文件 */

/* 函数原型声明,至少需要一个确定的参数,注意括号内的省略号 */ 
int demo(char* msg,...);

int main()
{
	demo("DEMO","This","is","a","demo","program!","\0");

	return 0;
}

/* ANSI标准形式的声明方式,括号内的省略号表示可选参数 */
int demo(char* msg,...)
{
	va_list argp;      /* 定义保存参数的结构 */
	int argno = 0;     /* 记录参数个数 */
	char buff[256];
	va_start(argp,msg);    /* 指向第一个可选参数 */
	
	while(1)
	{
		strcpy(buff, va_arg(argp,char*));
		if (strcmp(buff,"\0") == 0)   /* 采用空串标识参数结束 */
			break;

		printf("Parameter %d is: %s\n",argno,buff);
		argno++;
	}

	va_end(argp);    /* 将argp置为NULL */

	return 0;
}



⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?