어제 커맨드 라인을 통해 전달 된 인수를 사용하는 간단한 프로그램을 C++로 만들었습니다.명령 줄 인수를 처리하는 방법?
E.G. myDrive:\myPath\myProgram.exe firstWord secondWord
프로그램 실행 벌금과가있다,하지만 난이 조금 호기심이 무엇을 수행 내가 그렇지 않으면 내가 런타임 충돌이, 내가 잘 사용하기 전에 argc --;
를 작성했다 [컴파일러 말하지 않을 것이다!]. 특히 argc
에서
때문에 전혀 나쁜, 지금은 작동 나에게 내가 그것을 실행 프로그램에 대한 인수로 단어를주지 않는다 나쁜 시간 ...
을 제공하지만, I 이것이 왜 일어나고 있는지 궁금해! [P.S. argc --;
제작과 인쇄, 그것은 값으로 0
을 제공]
편집 :! 여기 뿐만 아니라 프로그램 자체의 이름을 포함 argc
int main(int argc, char *argv[]) {
[...]
argc --;
if(argc > 0){
if(firstArg.find_last_of(".txt") != string::npos){
reading.open(argv[1], ios::binary);
[...]
}
}
if ((!(firstArg.find_last_of(".txt") != string::npos)) && argc > 0){
[...]
for(int i = 1; i <= argc; i ++){
[...]
toTranslate = argv[i][j];
[...]
toTranslate = argv[i][j];
}
}
}
당신은 문제를 보여줍니다 몇 가지 코드를 보여줄 수 있습니까? –
'i <= argc'와 같은 것을 작성 했으리라 확신합니다. 우리에게 코드를 보여주세요. – Nawaz
나는 대답을 편집하고 잠시만 기다려주세요! – ingroxd