The signature of main
is:
int main(int argc, char **argv);
argc
refers to the number of command line arguments passed in, which includes the actual name of the program, as invoked by the user. argv
contains the actual arguments, starting with index 1. Index 0 is the program name.
So, if you ran your program like this:
./program hello world
Then:
- argc would be 3.
- argv[0] would be “./program”.
- argv[1] would be “hello”.
- argv[2] would be “world”.