The second snippet gives you access to the number of arguments on the command line (argc), and an array of pointers to those arguments. The first instance of the second argument (argv[0]) is always the name of the executable file. http://www.cplusplus.com/forum/beginner/254/
BTW, the type of the second argument should be constchar * argv[] although many compilers will let you get away with char * argv[]