命名空间
变体
操作

标准库头文件 <cstdarg>

来自 cppreference.cn
< cpp‎ | 头文件
 
 
标准库头文件
算法
<algorithm>
<numeric>
字符串
<cctype>
<cstring>
<cuchar> (C++11)
<cwchar>
<cwctype>
<string_view> (C++17)
<string>
文本处理
<clocale>
<codecvt> (C++11/17/26*)
<locale>
<regex> (C++11)
<text_encoding> (C++26)   
数值
<cfenv> (C++11)
<cmath>
<complex>
<linalg> (C++26)
<numbers> (C++20)
<random> (C++11)
<simd> (C++26)
<valarray>
时间
<chrono> (C++11)
<ctime>
C 兼容性
<ccomplex> (C++11/17/20*)
<ciso646> (until C++20)
<cstdalign> (C++11/17/20*)
<cstdbool> (C++11/17/20*)
<ctgmath> (C++11/17/20*)
 

此头文件最初在 C 标准库中为 <stdarg.h>

此头文件为 C 风格可变参数函数提供支持,而 "默认实参提升" 的 C 定义C++ 定义取代。

内容

类型

保有 va_startva_argva_endva_copy 所需的信息
(typedef) [编辑]

启用对可变参数函数实参的访问
(函数宏) [编辑]
访问下一个可变参数函数实参
(函数宏) [编辑]
(C++11)
制作可变参数函数实参的副本
(函数宏) [编辑]
结束可变参数函数实参的遍历
(函数宏) [编辑]

[编辑] 概要

namespace std {
  using va_list = /*see description*/ ;
}
#define va_arg(V, P) /*see description*/
#define va_copy(VDST, VSRC) /*see description*/
#define va_end(V) /*see description*/
#define va_start(V, P) /*see description*/

[编辑] 缺陷报告

以下行为更改缺陷报告被追溯应用于先前发布的 C++ 标准。

DR 应用于 已发布行为 正确行为
CWG 2645 C++98 C++ 定义了 "默认实参提升",但使用了它的 C 定义 C++ 定义覆盖了 C 定义