|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Den Gourkin 2:5061/7.33 22 Dec 2002 12:23:38 To : Andrew Martovlos Subject : Обрезать начальные и конечные пробелы в строке... -------------------------------------------------------------------------------- Xаюшки, Вам, однако, *Andrew*! Как-то раз, <Суб 21 Дек 02> в 20:01, Andrew Martovlos писал(а) All: AM> Как осуществить сабж на Си? AM> Строка содержит целое предложение так что sscanf("%s") не помогает. :( ИМХО, стандартных средств для такой обработки строк нет, хотя, могу и ошибаться. Можешь сделать что-нить наподобие и оформить отдельной функцией: === Cut === #include <stdio.h> #include <string.h> // ======================================================== int main() { char str[] = " Просто пример текстовой строки "; int len = strlen(str); char str2[len]; memset( str2, 0, sizeof(str2) ); for( int i = 0; i < len; i++ ) { if( (str[i] == ' ') && (str[i + 1] == ' ') ) continue; else if( (str[i] == ' ') && (str[i + 1] != ' ') ) strcat( str2, " " ); else if( str[i] != ' ' ) strncat( str2, (char *)&str[i], 1 ); } printf("\nПриведенная строка: %s\n\n", str2); return 0; } === Cut === DEN> Hаибестейших вишесов, Денис Гуркин. [Russian Team Linux] --- (GoldED+/LNX 1.1.4.7) Шоколадная фигурка гоблина 3-метрового роста * Origin: -= Challenger =- (2:5061/7.33) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/146963e058822.html, оценка из 5, голосов 10
|