반응형
c언어에서 기본적으로 프로그램을 실행할 때 항상 보는 함수가 있다.
main( )함수이다.
이 main함수에 윈도우나 리눅스 같은 OS의 명령프롬프트를 이용해 인자를 전달해서 특정 동작을해서 작동하도록 할 수 있다.
main함수는 프로그램 동작시 자동으로 실행되는 함수로, .exe 실행파일을 만들어놓고, OS프롬프트로 해당 .exe파일을 실행하면 된다.
예시)
#include <stdio.h>
// 첫번째 인자 argc는 전달된 인자의 갯수 (int형).
// 두번째는 char** 형태로 문자열 전달. (더블포인터 형 char** argv = char* argv[] 같은 말.)
int main(int argc, char* argv[])
{
int i = 0;
printf("전달된 인자 갯수: %d\n", argc);
for (i=0; i<argc ;i++)
{
printf("%d번째 문자열: %s\n", i+1, argv[i]);
}
return 0;
}
반응형
(결과)
윈도우 프롬프트에 해당 프로그램의 .exe파일로 가서 실행하며 동시에 인자를 넣어준다.
드라이브가 C가 아닌 경우 아래 참고. (다른 드라이브로 이동)
https://ansan-survivor.tistory.com/83
결과를 보면, 첫번째 argc 에는 입력된 인자의 갯수를 int형태로 전당하고,
argv[ ] 는 전달된 문자열(string)을 띄어쓰기를 구분자(delimeter)으로 전달함을 볼 수 있다.
각 문자열의 끝은 NULL문자로 구분하기 때문에 자동으로 NULL(\0)이 들어간다.
그러나 배열의 마지막 1개가 더 생성되서 NULL (\0)을 넣고 해당 문자열이 끝남을 알린다.
또한 전달 인자를 " " 큰따옴표로 묶으면 하나의 문자열로 간주하여 전달한다.
반응형
'C언어 \ C++' 카테고리의 다른 글
[C언어] C언어에서 EOF란? (C언어 파일 종료 코드) (2) | 2022.02.22 |
---|---|
[C언어] C언어 표준 입출력 stdin, stdout (입력과 출력), 문자 입출력 ( getchar, putchar, fgetc, fputc) (0) | 2022.02.21 |
[C언어] C언어 재귀함수의 활용, 사용 용도, 예제 (재귀함수 팩토리얼 Factorial 계산, n!) (0) | 2022.02.01 |
[C언어] 재귀함수란? 재귀함수 예시, 쉬운 설명 (0) | 2022.02.01 |
[C언어] 반복문 탈출 break 문, 반복문 계속 continue 문 (0) | 2022.01.29 |