В моей лаборатории я пытаюсь обработать строку, представляющую точку назначения на Земле. Примером этого является ....Назначение различных переменных для ввода из cin C++
"152/N 200/E California Ave"
В записках моего профессора, он сказал, что если вы сделали это ...
std::cin >> latitude >> latitudeDirection >> longitude >> longitudeDirection >> address
Какие потребляет весь путь до Калифорнии, где оттуда струна потребляется по одному за каждый пробел. Как это сделать, чтобы я использовал оставшуюся часть ввода? Вот как мои переменные выглядят при присваивании ...
latitude = 152
latitudeDirection = "/N"
longitude = 200
longitudeDirection = "/E"
address = "California"
адрес только держит «Калифорния», когда я хочу, чтобы держать «California Ave». Вот код, который у меня есть.
int numberOfLocations;
std::cin >> numberOfLocations;
std::cin.ignore();
for (int x = 0; x < numberOfLocations; x++) {
double longitude, latitude;
std::string longitudeDirection, latitudeDirection, address;
/*
std::cin >> latitude >> latitudeDirection >> longitude >> longitudeDirection >> address;
std::cout << latitude << latitudeDirection << latitude << latitudeDirection << address << std::endl;
*/
}
Проверьте [ввод C++ с пробелами] (http://stackoverflow.com/questions/5838711/c-cin-input -with-spaces) – sam