Вот функция для некоторого кода, над которым я работаю в C. Сейчас он принимает 2 разных пользовательских ввода и сохраняет их как город и расстояние. Я хочу, чтобы пользователь вводил только один раз. Например, «Введите название города и расстояние от предыдущего города: Арлингтон 200». Мне нужно разделить эту строку на значения для города и расстояния. Я думаю, что мне нужно использовать токены, но я не знаю, как.
void addCity ()
{
char city[30];
int distance;
printf("Enter city name : ");
scanf("%s",city);
printf("Enter distance from previous city: ");
scanf("%d",&distance);
printf("The city has been added.\n");
if(root == NULL){
root = (struct node *) malloc( sizeof(struct node) );
strcpy(root->city, city);
root->distance = distance;
root->next = NULL;
}
else
{
struct node *currentNode = root;
struct node *newNode = (struct node *) malloc( sizeof(struct node) );
while(currentNode->next!=NULL)
{
currentNode = currentNode->next;
}
strcpy(newNode->city, city);
newNode->distance = distance;
currentNode->next = newNode;
}
}