내 목표는 로봇을 이동하기 위해 사용자와 텍스트 파일의 지시를받는 것입니다. catch는 std :: string보다는 Cstrings (예 : char word [];)을 사용해야하고이를 토큰 화해야합니다.Cstring에서 다음 토큰을 int로 사용하려면 어떻게해야합니까? (C++)
코드는 다음과 같습니다
void Navigator::manualDrive()
{
char uinput[1];
char delim[] = " ";
char *token;
cout << "Enter your directions below: \n";
cin.ignore();
cin.getline (uinput, 256);
token=strtok(uinput, delim);
if(token == "forward")
{
int inches;
inches=token+1;
travel(inches);
}
}
내가 전에 아무것도 토큰 화 된 적이 없어, 나는이 작성하는 방법을 모르는 Cstrings을 사용한 적이 없으니까. 우리의 T.A.는 우리가이 방법을 결코 배우지 못했다는 것을 알고 있기 때문에 우리가 google에 모든 대답을 찾을 것을 기대합니다. 내 연구실의 모든 사람들은 평소보다 훨씬 어려움을 겪고 있습니다.
필자는 작성할 코드를 모르지만 내 프로그램에서 수행 할 내용을 알고 있습니다.
다음과 같이 실행하고 싶습니다.
1) 길 찾기를 요청하십시오. 첫 번째 단어 토큰 ==는 다음 토큰에 대한 "앞으로"이동 및 다음 앞으로
를 이동 앞으로 이동하는 방법을 몇 인치 찾을 경우
2) 토큰 화)에 inputed 문자열
4) 사용자 입력
3 cin.getline 5) 첫 번째 토큰이 == "turn"이면 다음 토큰으로 이동합니다. 다음 토큰 == "left"가 다음 토큰으로 이동하여 왼쪽으로 돌아갈 각도를 확인하십시오.
앞으로 x, 뒤로 x, 왼쪽 x, 오른쪽 x, 멈춤을 위해 이것을해야합니다 (x는 인치 또는도). 저는 이미 로봇에게 앞으로 움직여서 각도를 돌리는 방법을 로봇에게 알려주는 함수를 작성했습니다. 입력 된 문자열을 모두 소문자로 변환하고 토큰에서 토큰으로 이동하여 문자열에서 숫자를 변환하여 정수로 사용하는 방법을 알아야합니다. 아무것도 알려 주시기 바랍니다 명확하지 않다 http://www.cs.utk.edu/~cs102/robot_labs/Lab9.html
경우, 나는 최선 내가 할 수있는 명확합니다 : 모두가 명확하지 않으면
당신은 내 연구실이 링크에서 쓸 읽을 수 있습니다.
정말 C 질문입니까? – ben
James, 전체 페이지를 읽어보십시오. "당신은 cstring과 그 부속 라이브러리를 사용할 것입니다. [...]이 문제를 해결하기 위해 C++ 문자열 메소드 이외의 것을 사용할 수 있습니다." C++ 문자열 라이브러리는 사용할 수 없습니다. –
나는 즉시 대답 한 모든 사람들에게 감사 드리고 싶습니다. 나는 나의 문제를 그렇게 빨리 해결할 것을 기대하지 않았다. 모두에게 다시 한 번 감사 드리며 제 질문에 답변했습니다. 조만간 답변을 등록하고 로그인하겠습니다. – Van