main함수의 아규먼트// argc & argv
2020. 9. 18. 03:15ㆍ컴퓨터 수업/C++
@예제 코드를 보면서 배워보자
#include <iostream>
using namespace std;
int main(int argc, char* argv[])
{
cout << "argc는 지금 " << argc << "값을 갖고 있습니다." << endl;
for (int i = 0;i < argc;i++)
{
cout << "argv[" << i << "] 는 지금 " << argv[i] << "값을 갖고 있습니다." << endl;
}
}
결과값은 다음과 같다.
@Argument를 주는 방법 cmd!
cmd를 통해 exe 실행파일이 있는 Test.Lee의 Debug폴더까지 들어왔다.
첫 번째 문단을 보면, argv test.exe라는 파일명에 띄어쓰기가 있어서 오류가 났다.
이는 해당 파일명을 ""로 감싸주는 것으로 해결했다.
두 번째 문단을 보면, 인수로 string (char*)인 HiWorld! 를 넘겼더니 argument count (argc)가 2가 된 것을 확인할 수 있다.
세 번째 문단을 보면, argc가 3이 된 것을 확인 가능하다.
@IDE를 통해서 인수를 넘기는 방법.
프로젝트 설정을 열고, 구성 속성-디버깅의 명령 인수를 조작하면 매번 cmd에서 인수를 입력할 필요가 없다. 결과값은 다음과 같다.
#그렇다고 cmd창으로 실행파일을 실행할 때, 인수가 필요없다는 뜻이 아니다, 위의 명령 인수는 비주얼 스튜디오가 제공하는 것이니 내 컴퓨터의 명령 프롬프트는 아무 잘못이 없다 ㅠ
@따라서
#argc는 argument counter의 줄임말이다.
#argv는 argument value의 줄임말이다.
#argc는 반드시 1 이상의 값을 가진다, 따라서 argv[0]은 반드시 해당 실행파일(exe)의 경로를 가진다.
'컴퓨터 수업 > C++' 카테고리의 다른 글
디버깅 (0) | 2020.09.18 |
---|---|
빌드,컴파일 (0) | 2020.09.18 |
파일 입출력(fstream) (0) | 2020.09.14 |
const에 관한 얘기 (0) | 2020.09.13 |
연산자 오버로드(operator overload)//ostream 나중에 채워넣기 (0) | 2020.09.10 |