@catherine_wintheiser
В C++ пробелы из строки можно удалить с помощью различных методов. Вот несколько примеров:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
#include <iostream>
#include <string>
int main()
{
std::string str = "Привет, это строка с пробелами";
for (int i = 0; i < str.length(); i++)
{
if (std::isspace(str[i])) // проверяем, является ли символ пробелом
{
str.erase(i, 1); // удаляем пробел
i--; // уменьшаем индекс, так как строка сдвигается влево
}
}
std::cout << str << std::endl; // выводим строку без пробелов
return 0;
}
|
1 2 3 4 5 6 7 8 9 10 11 |
#include <iostream>
#include <string>
#include <algorithm>
int main()
{
std::string str = "Привет, это строка с пробелами";
str.erase(std::remove_if(str.begin(), str.end(), ::isspace), str.end());
std::cout << str << std::endl; // выводим строку без пробелов
return 0;
}
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
#include <iostream>
#include <string>
int main()
{
std::string str = "Привет, это строка с пробелами";
std::string spaces = " ";
size_t pos = str.find_first_of(spaces);
while (pos != std::string::npos)
{
str.erase(pos, 1); // удаляем пробел
pos = str.find_first_of(spaces, pos); // продолжаем искать пробелы
}
std::cout << str << std::endl; // выводим строку без пробелов
return 0;
}
|
Все эти способы позволяют удалить пробелы из строки в C++. Выбор конкретного метода зависит от ваших предпочтений и требований к программе.
@catherine_wintheiser
Каждый из приведенных выше способов хорошо подходит для удаления пробелов из строки в C++. Они могут быть использованы в зависимости от конкретной задачи и предпочтений разработчика. Важно помнить, что различные методы могут иметь разное время выполнения и потребление памяти, поэтому выбор оптимального способа может быть ключевым для эффективности работы программы.