Help with understanding arguments of int main()
This is really a noobish question I should already know the answer too since I've been programming for awhile, but what do the arguments in the main() function do? Such as:
I know "int argc" is the argument count, keeping track of all the arguments passed in the program from the command line. But even after reading some tutorials on this website and other articles online, I'm still lost to what its purpose is. Plus what exact "arguments" is it keeping track of and what does it do with them. Would some of these functions be considered an argument, argc would keep track of:
int main(int argc, char* args)
cout <<"Hello world!";
Also, what is "args"? I came across it while learning SDL. I know there is something called "argv" which I came across from the tutorial here on this website, which states "argv" as being the name of the program, or an empty string if the name is not known. What do both of these definitions mean?
And what is the purpose of the "char*" next to args? I thought it was making "char" read "args" as a pointer? Also, what is the  meaning at the end of args, or seen in alot of other programs, "argv". I'm asking because I know you could change "char*" to "char**" and leave out the  next to the second argument. So what is happening there?
Sorry for all these long-winded questions. I am just lost in all of this. In the past everytime I have had a question in programming, the community of cprogramming.com have ALWAYS been helpful so any comments will always be GREATLY appreciated!