What does int argc, char *argv[] mean in C++?


The argc stands for argument count and argv stands for argument values. These are variables passed to main function when it starts executing. When we run a program we can give arguments to that program like:

$ ./a.out hello

Here hello is an argument to the executable. This can be accessed in your program.

Example Code

#include<iostream>
using namespace std;
int main(int argc, char** argv) {
   cout << "This program has " << argc << " arguments:" << endl;
   for (int i = 0; i < argc; ++i) {
      cout << argv[i] << endl;
   }
   return 0;
}

When you compile and run this program like:

$ ./a.out hello people

This will give the output:

This program has 3 arguments

Output

C:\Users\user\Desktop\hello.exe
hello
people

Updated on: 30-Jul-2019

575 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements