C makro biblioteki - va_end ()
Biblioteka standardowa języka C - <stdarg.h>
opis
C biblioteki makronieważne va_end (va_list ap) pozwala na korzystanie z funkcji ze zmiennymi parametrami va_startmakro zwrotów. Jeśli nie zadzwonićva_end przed powrotem z funkcji, wynik jest niezdefiniowany.
oświadczenie
Oto va_end () makro stwierdzenie.
void va_end(va_list ap)
parametry
- ap - Jest to taka sama funkcja, zanim zainicjowany przez va_start obiektu va_list.
Wartość zwracana
To makro nie zwraca żadnej wartości.
Przykłady
Poniższy przykład demonstruje va_end () Makro użytkowania.
#include <stdarg.h> #include <stdio.h> int mul(int, ...); int main() { printf("15 * 12 = %d\n", mul(2, 15, 12) ); return 0; } int mul(int num_args, ...) { int val = 1; va_list ap; int i; va_start(ap, num_args); for(i = 0; i < num_args; i++) { val *= va_arg(ap, int); } va_end(ap); return val; }
Załóżmy, skompilować i uruchomić powyższy program, który spowoduje w następujących przypadkach:
15 * 12 = 180