Defined in header <stdarg.h>
void va_end( va_list ap );

The va_end macro performs cleanup for an ap object initialized by a call to va_start or va_copy. va_end may modify ap so that it is no longer usable.

If there is no corresponding call to va_start or va_copy, or if va_end is not called before a function that calls va_start or va_copy returns, the behavior is undefined.


ap - an instance of the va_list type to clean up

Expanded value



  • C11 standard (ISO/IEC 9899:2011):
    • The va_end macro (p: 270-271)
  • C99 standard (ISO/IEC 9899:1999):
    • The va_end macro (p: 250-251)
  • C89/C90 standard (ISO/IEC 9899:1990):
    • The va_end macro

See also

accesses the next variadic function argument
(function macro)
makes a copy of the variadic function arguments
(function macro)
holds the information needed by va_start, va_arg, va_end, and va_copy
enables access to variadic function arguments
(function macro)
C++ documentation for va_end

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.