main에 대한 인수Arguments to main

ANSI 2.1.2.2.1 main에 대한 인수의 의미 체계ANSI 2.1.2.2.1 The semantics of the arguments to main

Microsoft C에서 프로그램 시작 시 호출되는 함수를 main이라고 합니다.In Microsoft C, the function called at program startup is called main. main에 대해 선언된 프로토타입은 없으며 이는 0개, 2개 또는 3개의 매개 변수로 정의할 수 있습니다.There is no prototype declared for main, and it can be defined with zero, two, or three parameters:

int main( void )  
int main( int argc, char *argv[] )  
int main( int argc, char *argv[], char *envp[] )  

main에서 세 개의 매개 변수를 수락하는 위의 세 번째 줄은 ANSI C 표준에 대한 Microsoft 확장입니다.The third line above, where main accepts three parameters, is a Microsoft extension to the ANSI C standard. 세 번째 매개 변수인 envp는 환경 변수에 대한 포인터의 배열입니다.The third parameter, envp, is an array of pointers to environment variables. envp 배열은 null 포인터에 의해 종료됩니다.The envp array is terminated by a null pointer. mainenvp에 대한 자세한 내용은 main 함수 및 프로그램 실행을 참조하세요.See The main Function and Program Execution for more information about main and envp.

argc 변수는 음수 값을 갖지 않습니다.The variable argc never holds a negative value.

문자열의 배열은 argv[argc]로 끝나는데 이는 null 포인터를 포함합니다.The array of strings ends with argv[argc], which contains a null pointer.

argv 배열의 모든 요소는 문자열에 대한 포인터입니다.All elements of the argv array are pointers to strings.

명령줄 인수 없이 호출된 프로그램은 실행 파일의 이름이 argv[0]에 배치되므로 argc를 위한 값을 하나 받습니다.A program invoked with no command-line arguments will receive a value of one for argc, as the name of the executable file is placed in argv[0]. 버전 3.0 이전의 MS-DOS에서는 실행 파일 이름을 사용할 수 없습니다.(In MS-DOS versions prior to 3.0, the executable-file name is not available. "C" 문자는 argv[0]에 배치됩니다. argv[1] ~ argv[argc - 1]에서 가리키는 문자열은 프로그램 매개 변수를 나타냅니다.The letter "C" is placed in argv[0].) Strings pointed to by argv[1] through argv[argc - 1] represent program parameters.

argcargv 매개 변수는 수정할 수 있으며 프로그램 시작과 프로그램 종료 사이에서 마지막으로 저장된 값을 유지합니다.The parameters argc and argv are modifiable and retain their last-stored values between program startup and program termination.

참고 항목See Also

환경Environment