1 #include <stdio.h> 2 #include <stdarg.h> 3 4 struct bogus { 5 int x; 6 char *y; 7 int z; 8 }; 9 10 11 void foo(char * dummy,...)12foo(char *dummy, ...) { 13 va_list va; 14 struct bogus b; 15 va_start(va, dummy); 16 17 b = va_arg(va, struct bogus); 18 printf("%d, %s, %d\n", b.x, b.y, b.z); 19 } 20 21 int main()22main() { 23 struct bogus b; 24 25 b.x = 123; 26 b.y = "hello"; 27 b.z = 456; 28 foo(NULL, b); 29 } 30 31