<code su.c>
1 : #include <stdio.h>
2 : #include <stdlib.h>
3 : void main(int argc, char *argv[]){
4 : int m = atoi(argv[1]); //argv[1]에 들어온 수를 m에 저장
5 : int n = atoi(argv[3]); //argv[3]에 들어온 수를 n에 저장
6 ;
7 : int j = *argv[2]; //argv[2]에는 부호가 들어감
8 : /*int j = argv[2][0]; 으로 해도 된다 */
9 : int result;
10 : if(j == 43) //43은 '+'의 아스키 코드값
11 : result = m + n;
12 : else if(j == 45)
13 : result = m - n;
14 : else if(j == 47)
15 : result = m / n;
16 : else if(j == 42)
17 : result = m * n;
18 :
19 : printf("result = %d", result); //결과값 출력
20 : }
컴파일, 링크 -> su.exe 생성
<result>
c:/>su 20 + 50
result = 70
<main(argc, argv)>
1. 형식
main(int argc, char *argv[]) 또는
main(int argc, char **argv)
2. argc ( argument count)
ex > command 창에서 실행
del chungha.doc <- 2마디, argc = 2
copy chungha.doc my.doc <- 3마디, argc = 3
마디의 구별 : 공백, tab 문자
3.argv(argument vector)
argument로 넘어온 각 단어의 번지수.
argv[0] => 완전한 경로명과 함께 file 의 이름 가짐.
'Backend > C' 카테고리의 다른 글
Call by value & call by reference (0) | 2012.04.12 |
---|---|
문자열의 길이를 계산하는 두 가지 방법 (0) | 2012.04.12 |
strcpy()함수 (0) | 2012.04.12 |
파일을 여러 가지 모드로 열기 (0) | 2012.04.12 |
Hello, World! (0) | 2012.04.12 |