Yeah, this code doesn't do anything more than check to see if two arguments were passed on the command line. If there weren't two, and only two, arguments on the command line, then it would print the usage statement and exit. If there were only two arguments, then the program might crash (because it's closing a FILE * that is unallocated ...