Bibliothèque standard C - <stdarg.h>


Introduction

stdarg.h Le fichier d'en-tête définit un type de variable va_list et trois macros, qui peuvent être utilisées dans les paramètres Obtenir les paramètres dans la fonction lorsque le nombre de paramètres est inconnu (c'est-à-dire que le nombre de paramètres est variable).

Les fonctions de paramètres variables sont généralement définies à l'aide de points de suspension (...) à la fin de la liste des paramètres.

Variables de bibliothèque

Voici les types de variables définis dans le fichier d'en-tête stdarg.h :

Numéro de sérieVariable et description
1
序号变量 & 描述
1va_list
这是一个适用于 va_start()、va_arg()va_end() 这三个宏存储信息的类型。
va_list


Il s'agit d'un type applicable aux trois macros

va_start(), va_arg()

et

va_end()
序号宏 & 描述
1void va_start(va_list ap, last_arg)
这个宏初始化 ap 变量,它与 va_argva_end 宏是一起使用的。last_arg 是最后一个传递给函数的已知的固定参数,即省略号之前的参数。
2type va_arg(va_list ap, type)
这个宏检索函数参数列表中类型为 type 的下一个参数。
3void va_end(va_list ap)
这个宏允许使用了 va_start 宏的带有可变参数的函数返回。如果在从函数返回之前没有调用 va_end,则结果为未定义。
.
Macros de bibliothèque<🎜><🎜>Voici les macros définies dans le fichier d'en-tête stdarg.h : <🎜>
Numéro de sérieMacro et description
1< /td>void va_start(va_list ap, last_arg)
Cette macro initialise la variable <🎜>ap<🎜>, qui est avec <🎜>va_arg<🎜> et <🎜> va_end<🎜> macros utilisées. <🎜>last_arg<🎜> est le dernier argument fixe connu transmis à la fonction, c'est-à-dire l'argument avant les points de suspension.
2type va_arg(va_list ap, type)
Cette macro récupère le type <🎜>type<🎜> dans le paramètre de la fonction lister le paramètre suivant.
3void va_end(va_list ap)
Cette macro permet d'utiliser la macro <🎜>va_start<🎜> avec des variables. La fonction renvoie les paramètres. Si <🎜>va_end<🎜> n'est pas appelé avant le retour de la fonction, le résultat n'est pas défini.
<🎜>