1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | #include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include <assert.h>
#include <stdarg.h>
void print_strings(int num_strings, ...) { // ... indicates a VARIADIC FUNCTION
va_list more_args; // more_args will allow us to access the variadic arguments
va_start(more_args, num_strings);
for(int i = 0; i < num_strings; i++) {
char* s = va_arg(more_args, char*);
printf("%d. %s\n", i + 1, s);
}
va_end(more_args); // do this ONCE after you're done accessing variadic arguments
}
int main(int argc, char* argv[]) {
print_strings(3, "bottle gourd", "broccollini", "bok choy");
return EXIT_SUCCESS;
}
/* vim: set tabstop=4 shiftwidth=4 fileencoding=utf-8 noexpandtab: */
|
© Copyright 2024 Alexander J. Quinn This content is protected and may not be shared, uploaded, or distributed.