FAQ:ANSI CPP:удалить из строки все пробелы — различия между версиями
Материал из Весельчак У
RXL (обсуждение | вклад) (Категория FAQ) |
(нет различий)
|
Версия 21:26, 8 апреля 2008
Как удалить из строки все пробелы при обработке строки символов в Си++
Можно воспользоваться строками STL.
std::string EraseSpaces( std::string s )
{
s.erase( remove( s.begin(), s.end(), _T(' ')), s.end());
return s;
}
А со строками CString так:
txt.Replace(" ","");
Если надо все руками, то так
void main()
{
char * string = new char[128];
strcpy(string, "hjsg jsghfhjsg fhjsg hj hj jh hj gsd j jhsg hjgsd j");
char * current = string;
char * last = string;
for (; *current != '\0' ; ++current)
{
if (*current != ' ')
{
*last = *current;
last++;
}
}
delete[] string;
}