Prev Next
C Command line arguments:
main() function of a C program accepts arguments from command line or from other shell scripts by following commands. They are,
- argc
- argv[]
where,
argc – Number of arguments in the command line including program name
argv[] – This is carrying all the arguments
- In real time application, it will happen to pass arguments to the main program itself. These arguments are passed to the main () function while executing binary file from command line.
- For example, when we compile a program (test.c), we get executable file in the name “test”.
- Now, we run the executable “test” along with 4 arguments in command line like below.
./test this is a program
Where,
argc = 5
argv[0] = “test”
argv[1] = “this”
argv[2] = “is”
argv[3] = “a”
argv[4] = “program”
argv[5] = NULL
Example program for argc() and argv() functions in C:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
#include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) // command line arguments { if(argc!=5) { printf("Arguments passed through command line " \ "not equal to 5"); return 1; } printf("\n Program name : %s \n", argv[0]); printf("1st arg : %s \n", argv[1]); printf("2nd arg : %s \n", argv[2]); printf("3rd arg : %s \n", argv[3]); printf("4th arg : %s \n", argv[4]); printf("5th arg : %s \n", argv[5]); return 0; } |
Output:
Program name : test
1st arg : this 2nd arg : is 3rd arg : a 4th arg : program 5th arg : (null) |
Continue on C – Variable length arguments….