Моя цель - получать указания от пользователя и, в конечном итоге, текстовый файл для перемещения робота. Уловка в том, что я должен использовать Cstrings (например, char word [];), а не std :: string и токенизировать их для использования.
код выглядит так:
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) cin.getline пользовательский ввод
3) токенизировать введенную строку
4) если первое слово токен == «вперед», перейдите к следующему токену и выясните, на сколько дюймов нужно двигаться вперед, затем двигайтесь вперед
5) иначе, если первый токен == «поворот», переходите к следующему токену. если следующий токен == «влево», переходите к следующему токену и узнайте, на сколько градусов повернуть налево
Мне придется сделать это для вперед x, назад x, поворота влево x, поворота вправо x и остановки (где x в дюймах или градусах). Я уже написал функции, которые говорят роботу, как двигаться вперед на дюйм и поворачиваться в градусах. Мне просто нужно знать, как преобразовать введенные строки во все строчные буквы и перейти от токена к токену и преобразовать или извлечь числа из строки, чтобы использовать их как целые числа.
Если не все ясно, вы можете прочитать мою лабораторную работу по этой ссылке: http://www.cs.utk.edu/~cs102/robot_labs/Lab9.html
Если что-то неясно, пожалуйста, дайте мне знать, и я уточню как смогу.