Ответы на вопрос:
std::string src;
std::vector<std::string> arr;
boost::split(arr, src, boost::is_any_of(" "));
std::vector<std::string> reverse;
for (auto it = arr.begin(); it != arr.end(); it++)
reverse.push_back(*it);
std::string res = boost::join(reverse, " ");
И если нужно - удали точку
Сначала надо бы найти точку в строке и обрезать строку по ней, но с этим Вы и сами справитесь А слова в обратоной последовательности вот:
#include <iostream>
#include <string>
#include <sstream>
#include <stack>
int main(){
std::string str;
while ( std::cout << "String: " && std::getline(std::cin, str) && ! str.empty() ){
std::istringstream ist(str);
std::stack<std::string> stk;
while ( ist >> str )
stk.push(str);
while ( ! stk.empty() ){
std::cout << stk.top() << ' ';
stk.pop();
}
std::cout << std::endl;
}
return 0;
}
Популярно: Информатика
-
xrot31.01.2021 15:50
-
50978886621.02.2020 00:10
-
olegovnao2720.10.2020 18:47
-
karkarich6806.07.2021 17:47
-
verenikinaulia26.05.2020 14:40
-
sabrinairnfd02.11.2020 00:50
-
ледезе23.05.2021 23:13
-
Незнайка009126.09.2022 01:55
-
roma627914.05.2021 04:33
-
Любознайка0902.07.2020 06:06