본문 바로가기
프로그래밍 언어/C, C++의 기본적인 설명

[C 언어] 명령행 전달인자 (argc, argv)

by Physics 2022. 3. 25.
728x90

이번 장에서는 C의 main 함수의 전달인자 (parameters)에 대해서 알아본다. C에서는 두 개의 main함수의 전달인자를 사용할 수 있다.

a. 2개의 main 함수의 전달인자: argc, argv

1) argc (argument count)
    - 관례적으로 첫번째 전달인자를 argc로 부른다. 
    - 명령행에 있는 문자열의 갯수 
    - 컴퓨터 시스템은 스페이스를 사용하여 언제 하나의 문자열이 끝나고 다음 문자열이 시작되는지를 나타낸다. 
    - NOTE: 첫번째 문자열은 항상 프로그램의 이름 
  2) argv (argument value) 
    - 관례적으로 두 번째 전달인자를 argv (argument value)로 부름 
    - 문자열들을 가리키는 포인터들의 배열 
    - NOTE)
       -- argv[0]: 프로그램의 이름 

b. 선언 방식

아래의 두 방법은 동일하지만, 일반적으로 첫번째 선언을 더 많이 사용한다. 

1. 첫번째 선언 방식
int main(int argc, char **argv)

2. 두번째 선언 방식 
int main(int argc, char *argv[])

 

c. example

program name: example.c
=================================================
#include <stdio.h>

int main(int argc, char **argv){
	
    printf("the number of paramters used in this program: %d\n", argc -1);
	for (int count = 1; cound <argc; count ++) {
    	printf("%d: %s\n", count, argv[count])
	}
	printf("\n");
}

==================================================
In terminal, 

$./example.c Korea Japan USA France
1: Korea
2. Japan
3. USA
4. France
728x90

댓글