Be careful though - some compilers at least (and this may be a general C thing) will not always do what you want:
char *s = "four";
printf("%*.s\n", 5, s); // Note the "."
This prints 5 spaces;
char *s = "four";
printf("%*s\n", 3, s); // Note no "."
This prints all four characters "four"