C ++에서 int main (int argc, char ** argv) 사용

Erry07

내가 사용하려고하는 문제가 발생하고있어 char** argv으로부터를 main. 내 목표는 argv[2]라는 다른 클래스의 문자열에 전달하는 데 사용 하는 것입니다 Game. 누군가 내가 사용 argv하고 다른 클래스에 문자열로 전달할 수있는 방법을 알고 있습니까?

int main(int argc, char **argv)
{
  Game game(argv[2]);
  game.runsecondmethod();
}

그리고 Game.cpp:

Game::Game(std::string a)
{
   write.filename = a;
}
error, no match for call to (Game)(char*&)
베드로

실제로 문제를 나타내는 코드를 제공하지는 않았지만 질문에 답하기 위해 argv[2]문자열로 함수 에 전달 하는 방법 은 다음과 같습니다.

  #include <cstring>
  #include <iostream>
  void func(const char *s)
  {
       //  treat s as a zero terminated string

       if (std::strcmp(s, "Hello") == 0)
       {
            std::cout << "You said hello\n";
       }
  }

  int main(int argc, char **argv)
  {
      if (argc >= 3)
        func(argv[2]);
      else
         std::cout << "You have not supplied an argv[2]\n";
  }

또는

  #include <string>
  #include <iostream>
  void func2(const std::string &s)
  {
       if (s == "Hello")
       {
            std::cout << "You said hello\n";
       }
  }

  int main(int argc, char **argv)
  {
      if (argc >= 3)
        func2(argv[2]);
      else
         std::cout << "You have not supplied an argv[2]\n";
  }

위의 첫 번째 예 ( std네임 스페이스 std::cout및 C ++ 헤더 사용 제외 )는 본질적으로 바닐라 C입니다.

두 번째 예제는 std::string클래스를 사용하므로 ==연산자를 사용하여 문자열 비교가 가능합니다 . 참고로 main(), 호출시 func2()암시하는 변환 argv[2]으로 std::string(이후 std::string생성자를 갖는다 변환 것을 허가)를 함수에 전달된다.

두 경우 모두, main()검사 argc2 (또는 그 이상)의 인수에 전달되었는지 확인합니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Using int main(int argc, char **argv) in c++

분류에서Dev

int main (int argc, char ** argv) with <stdin> stdout in c

분류에서Dev

어떤 경우에 int main (int argc, const char * argv [])을 사용하고 싶습니까?

분류에서Dev

main (int arc, char * argv []) 사용?

분류에서Dev

GTEST_API_ int main (int argc, char ** argv) {}에서 GTEST_API_는 무엇입니까?

분류에서Dev

int main (int argc, char * argv [])과 int main (int argc, char ** argv)의 차이점은 무엇입니까?

분류에서Dev

왜이 세분화 오류 (코어 덤프 됨) ??? int main (int argc, char * argv [])

분류에서Dev

"int argc and char * argv []"를 내 주 함수에 추가하고 내 코드에 내포하는 방법은 무엇입니까?

분류에서Dev

C ++에서 cin을 사용하여 int 변수에 char 및 int 입력

분류에서Dev

EM_JS : int argc, char ** argv를 JS 문자열 배열로 변환하는 방법은 무엇입니까?

분류에서Dev

sscanf를 사용하여 c에서 char를 int로 변환

분류에서Dev

왜 (char) + (char) = (int) in C?

분류에서Dev

C ++ char * 대 int *

분류에서Dev

C char []와 int 사이의 int 함수에서 데이터 유형 충돌

분류에서Dev

std :: vector <int>에서 char [] C ++로 변환

분류에서Dev

c #에서 c ++ unsigned int * array 사용

분류에서Dev

C : argc와 argv로 변경

분류에서Dev

argv 및 argc를 사용하지 않고 합계 값을 C ++ 프로그램에 전달하는 방법

분류에서Dev

char * 캐스팅은 int 참조에 대해 무엇을합니까? (C 사용)

분류에서Dev

사용자 입력에서 int 또는 char / string 구별

분류에서Dev

C #에서 (char) (1) + (char) (2) 결과 int 3

분류에서Dev

C의 char 배열에 int 추가

분류에서Dev

char에서 int로 변환

분류에서Dev

char에서 int로 변환

분류에서Dev

char *에서 int로 변환

분류에서Dev

string, int 및 int에 대해 C에서 "String"(char 배열) 구문 분석

분류에서Dev

C / C ++ char ** argv VS * argv []

분류에서Dev

if 조건에서 Int 사용

분류에서Dev

char **를 int C ++로 변환

Related 관련 기사

  1. 1

    Using int main(int argc, char **argv) in c++

  2. 2

    int main (int argc, char ** argv) with <stdin> stdout in c

  3. 3

    어떤 경우에 int main (int argc, const char * argv [])을 사용하고 싶습니까?

  4. 4

    main (int arc, char * argv []) 사용?

  5. 5

    GTEST_API_ int main (int argc, char ** argv) {}에서 GTEST_API_는 무엇입니까?

  6. 6

    int main (int argc, char * argv [])과 int main (int argc, char ** argv)의 차이점은 무엇입니까?

  7. 7

    왜이 세분화 오류 (코어 덤프 됨) ??? int main (int argc, char * argv [])

  8. 8

    "int argc and char * argv []"를 내 주 함수에 추가하고 내 코드에 내포하는 방법은 무엇입니까?

  9. 9

    C ++에서 cin을 사용하여 int 변수에 char 및 int 입력

  10. 10

    EM_JS : int argc, char ** argv를 JS 문자열 배열로 변환하는 방법은 무엇입니까?

  11. 11

    sscanf를 사용하여 c에서 char를 int로 변환

  12. 12

    왜 (char) + (char) = (int) in C?

  13. 13

    C ++ char * 대 int *

  14. 14

    C char []와 int 사이의 int 함수에서 데이터 유형 충돌

  15. 15

    std :: vector <int>에서 char [] C ++로 변환

  16. 16

    c #에서 c ++ unsigned int * array 사용

  17. 17

    C : argc와 argv로 변경

  18. 18

    argv 및 argc를 사용하지 않고 합계 값을 C ++ 프로그램에 전달하는 방법

  19. 19

    char * 캐스팅은 int 참조에 대해 무엇을합니까? (C 사용)

  20. 20

    사용자 입력에서 int 또는 char / string 구별

  21. 21

    C #에서 (char) (1) + (char) (2) 결과 int 3

  22. 22

    C의 char 배열에 int 추가

  23. 23

    char에서 int로 변환

  24. 24

    char에서 int로 변환

  25. 25

    char *에서 int로 변환

  26. 26

    string, int 및 int에 대해 C에서 "String"(char 배열) 구문 분석

  27. 27

    C / C ++ char ** argv VS * argv []

  28. 28

    if 조건에서 Int 사용

  29. 29

    char **를 int C ++로 변환

뜨겁다태그

보관