C语言-可变参数

it2023-12-02  69

stdarg.h 头文件定义了一个变量类型 va_list 和三个宏,这三个宏可用于在参数个数未知(即参数个数可变)时获取函数中的参数。可变参数的函数通在参数列表的末尾是使用省略号(,...)定义的。

va_list:参数列表变量

可变参数例子:

#include<stdarg.h> #include <stdio.h> //可变参数 void hlog(int size,char *data,...) { char* str=NULL; va_list sagrv; va_start(sagrv,data) ; for(int i=0;i<size;i++) { str=va_arg(sagrv,char*); printf("%s\n",str); } va_end(sagrv); } int main(int argc, char *argv[]) { char* data="INFO"; printf("%s\n",data); for(int i=1;i<argc;i++) hlog(1,data,argv[i]); return 0; }

运行结构:

参考:

https://www.runoob.com/cprogramming/c-standard-library-stdarg-h.html

最新回复(0)