FAQ:ANSI CPP:удалить из строки все пробелы
Материал из Весельчак У
Как удалить из строки все пробелы при обработке строки символов в Си++?
Можно воспользоваться строками 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, "строка символов с пробелами");
char * current = string;
char * last = string;
for (; *current != '\0' ; ++current)
{
if (*current != ' ')
{
*last = *current;
last++;
}
}
delete[] string;
}