/* * Fun with arrays and loops using command-line arguments * * Try renaming the executable, and running it with different numbers/lengths of arguments */ #include #include int main(int argc, char **argv) { int i, j; fprintf(stdout, "You typed: "); for(i = 0; i < argc; i++) fprintf(stdout, "%s ", argv[i]); fprintf(stdout, "\n\n"); for(i = 0; i < argc; i++) fprintf(stdout, "*(argv+%d) / argv[%d]: %s\n", i, i, argv[i]); fprintf(stdout, "\n\n"); for(i = 0; i < argc; i++) { for(j = 0; j <= strlen(argv[i]); j++) { if ((*(*(argv+i)+j)) == '\0') fprintf(stdout, "*(*(argv+%d)+%d): '\\0' ", i, j); else fprintf(stdout, "*(*(argv+%d)+%d): '%.2c' ", i, j, (*(*(argv+i)+j))); fprintf(stdout, "(%.3d / 0x%2.2X)\n", (*(*(argv+i)+j)), (*(*(argv+i)+j))); } fprintf(stdout, "\n"); } fprintf(stdout, "\n"); return(0); }