UNIX에서 C++의 명령 줄 매개 변수를 어떻게 검사 할 수 있습니까? 예를 들어 매개 변수를 입력하지 않은 경우 세분화 오류를 가져 오는 대신 오류 메시지를 어떻게 인쇄합니까?UNIX에서 C++의 명령 줄 매개 변수를 확인하는 방법은 무엇입니까?
답변
if (argc<2)
{
fprintf(stderr, "This program requires more parameters\n");
return -1;
}
getopt을 사용하십시오. argc
만약
는 사용자가 어떤 명령 줄 매개 변수를 제공하지 않았다, 1보다 큰 경우 :
이#include <stdio.h>
int main (int argc, char *argv[])
{
if (argc < 2)
{
printf("The command had no arguments.\n");
}
return 0;
}
'argv [0]'은 항상 실행 된 프로그램의 이름이 아닙니다. 'execl'을 사용하면 NULL을 포함하여 아무 것도 될 수 없습니다. 또한보십시오 http://stackoverflow.com/a/275317/79455 – rve
Re "첫 번째 인수 (argv [0]) 항상 실행 된 프로그램의 이름입니다": 그건 잘못 됐어. 'argv [0]'이 프로그램의 이름이라는 것을 위임하는 것이 아니라 관례에 따른다. 어떤 프로그램을 호출하기 위해서'exec' 계열의 함수를 사용한다면 당신이 원하는대로 argv [0]을 만들 수 있습니다. 그 이름 (또는 특히 경로)을'argv [0]'으로 전달하지 않는 강력한 보안상의 이유가 있습니다. –
주의 사항 : @DavidHammen 감사합니다 :) – Meysam
이 높은 명령 줄 구문 분석에 대한 부스트 program_option
라이브러리를 권장합니다.
- 1. c의 명령 줄 해석기
- 2. 제거 프로그램에 주어진 명령 줄 매개 변수를 읽는 방법은 무엇입니까?
- 3. getopt를 사용하여 UNIX에서 다중 문자 매개 변수를 만드는 방법은 무엇입니까?
- 4. C의 명령 줄 인수에서 "string"을 읽는 방법은 무엇입니까?
- 5. .net 명령 줄 매개 변수?
- 6. 구성을위한 명령 줄 매개 변수를 무시하는 Nunit
- 7. Unix에서 Java 명령 줄 인수 읽기
- 8. 입력 매개 변수를 빠르게 확인하는 방법은 무엇입니까?
- 9. C의 명령 줄 인수에서 Null 문자를 전달하는 방법은 무엇입니까?
- 10. 명령 디자인 패턴을 사용하여 명령 줄 매개 변수를 개체로 변환
- 11. .Net 서비스를 명령 줄 + 매개 변수로 등록하는 방법은 무엇입니까?
- 12. 명령 줄 매개 변수
- 13. 명령 줄 매개 변수 가져 오기
- 14. Linux/Unix에서 실행되는 독립 실행 형 MATLAB 실행 파일에 명령 줄 인수를 전달하는 방법은 무엇입니까?
- 15. WPF에서 명령 매개 변수를 통해 여러 매개 변수를 전달하는 방법은 무엇입니까?
- 16. CMD/BAT 명령 줄 매개 변수가 특정 단어와 일치하는지 확인하는 방법은 무엇입니까?
- 17. 명령 줄 매개 변수를 사용하는 데 문제가 있습니다.
- 18. 명령 줄 프로그램이 설치되어 있는지 확인하는 가장 간단한 방법은 무엇입니까?
- 19. eclipse의 Scalac 명령 줄 매개 변수는 무엇입니까?
- 20. UNIX에서 줄 바꾸기 문자 바꾸기
- 21. PHP 라이브러리 명령 줄 옵션과 매개 변수를 얻으려면
- 22. 어떻게 명령 줄 매개 변수를 기반으로 NSIS 스크립트를 조건부로 컴파일합니까?
- 23. '<'를 포함하는 명령 줄 매개 변수를 'exec'에 전달하는 방법
- 24. Eclipse : 명령 줄 매개 변수를 예상하는 디버그 스크립트
- 25. Visual Studio에서 명령 줄 매개 변수를 사용하여 디버그
- 26. VS2010 명령 줄 빌드/컴파일 매개 변수를 내보내는 방법
- 27. 코코아 응용 프로그램에서 명령 줄 매개 변수를 결정하는 경우
- 28. 소스 후 명령 줄 매개 변수를 캡처하는 방법
- 29. Delphi 프로그램에서 명령 줄 매개 변수를 어떻게 인식합니까?
- 30. PLSQL 명령 줄 매개 변수
[무엇을 시도해 봤습니까?] (http://mattgemmell.com/2008/12/08/what-have-you-tried/) 세분화 오류가 발생하는 사례를주의하십시오. –