va_end
From cppreference.com
                    
                                        
                    
                    
                                                            
                    |   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.
Parameters
| ap | - | an instance of the va_list type to clean up | 
Expanded value
(none)
References
- C11 standard (ISO/IEC 9899:2011):
 
- 7.16.1.3 The va_end macro (p: 270-271)
 
- C99 standard (ISO/IEC 9899:1999):
 
- 7.15.1.3 The va_end macro (p: 250-251)
 
- C89/C90 standard (ISO/IEC 9899:1990):
 
- 4.8.1.3 The va_end macro
 
See also
|    accesses the next variadic function argument  (function macro)  | |
|    (C99)  | 
   makes a copy of the variadic function arguments   (function macro)  | 
|    holds the information needed by va_start, va_arg, va_end, and va_copy  (typedef)  | |
|    enables access to variadic function arguments  (function macro)  | |
|   C++ documentation for va_end 
 | |