각 함수에는 매개 변수를 지정할 수 있다. 

다른 함수와 같이 main 함수도 매개변수를 받을 수 있는데


main(int argc, char* argv[])


argc는 프로그램 실행시 지정해준 “명령행 옵션”의 “개수”가 저장되는 곳

argv는 프로그램 실행시 지정해준 “명령행 옵션의 문자열들”이 실제로 저장되는 배열 이다



argc의 값은 옵션이 입력되지 않아도 기본적으로 1, 즉 agrc는 항상 1이상이며,

argv[0], argv의 첫번째 요소는 항상 “프로그램 자신의 파일명”이다.


따라서 옵션의 정확한 갯수를 구하려면 argc에서 -1 해주어야 한다.



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <stdlib.h>
 
int main(int argc, char* argv[])
{
        int i=0;
        printf("input : %d\n", argc-1);
 
        if(argc == 1){
                fputs("none input",stderr);
                exit(1);
        }
 
        for(i=0; i<argc; i++){
                printf("argv[%d] : %s\n", i, argv[i]);
        }
        return 0;
}
cs





+ Recent posts