프로그래밍2008. 4. 25. 19:08
반응형
argc, argv에 대해..

#include <stdio.h>


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

{

   

     ................

   

}


위에 실행파일이 a.exe이고 c:\abc\a.exe 에 위치해 있다고 하면


c:\abc>a.exe abc def vcd


라고 쳤을경우


"c:\abc\a.exe" 라는 문자열이 argv[0] 에

"abc" 라는 문자열이 argv[1] 에

"def" 라는 문자열이 argv[2] 에

"vcd" 라는 문자열이  argv[3] 에 저장됨.


argc는 몇개의 인자가 붙었는가 하는것인데.


       1              2     3    4                 <-argc

c:\abc>a.exe abc def vcd

      [0]            [1] [2] [3]                <-argv


위와같이 됨...



예제로))


#include <stdio.h>


void main(int argc,char *argv[])
{
   int i;


   printf("옵션(인자수) 수는 %d 개 이고\n",argc);


   for(i=0; i<argc;i++) {


      printf("argv[%d] 에 있는 문자는 %s 입니다.\n",i,argv[i]);


}

위 소스파일이 abc.c 이고 실행파일이 abc.exe,

abc.exe 가 c:\tc20\bin\abc.exe 에 위치해 있다고 하면


c:\tc20\bin>abc /a /k /t <엔터>

옵션(인자수) 수는 4 개 이고

argv[0] 에 있는 문자는 c:\tc20\bin\abc.exe 입니다.

argv[1] 에 있는 문자는 /a 입니다.

argv[2] 에 있는 문자는 /k 입니다.

argv[3] 에 있는 문자는 /t 입니다.

c:\tc20\bin>


※ 인자수는 띄움에 의해 설정됨.

반응형

'프로그래밍' 카테고리의 다른 글

hungarian prefix  (0) 2008.04.26
break와 continue  (0) 2008.04.25
공용체, 열거형 상수, typedef문  (0) 2008.04.25
C언어에서 실수형의 출력 내용이 정확하지 않은 이유  (0) 2008.04.25
전처리기  (0) 2008.04.25
Posted by pmj0403