#include #include void print_string_vanilla(const char * s) { while(*s) putchar(*s++); putchar('\n'); } void print_string_strawberry(const char * s) { printf("=== %s ===\n", s); } void print_string_chocolate(const char * s) { printf("a string of %zd characters: %s\n", strlen(s), s); } typedef void (*print_function)(const char *); print_function F[] = { print_string_vanilla, print_string_strawberry, print_string_chocolate }; int main(int argc, const char * argv[]) { for(int j = 0; j < 3; ++j) for(int i = 0; i < argc; ++i) (F[j])(argv[i]); return 0; }