Исключить из строки группы символов, расположенные между скобками [, ] - C (СИ)
Формулировка задачи:
Можете помочь решить? С объяснением пожалуйста. На чистом СИ | Дана строка символов. Исключить из этой строки группы символов, расположенные между скобками [, ]. Сами скобки тоже должны быть исключены. Предполагается, что внутри каждой пары скобок нет других скобок.
Решение задачи: «Исключить из строки группы символов, расположенные между скобками [, ]»
textual
Листинг программы
#include <stdio.h> char* remove_s(char* s, char fch, char lch){ char* p, *i, *t = s; while(*s && (*s != fch)) ++s; for(p = s; *s; *s = *p){ if(*p == fch){ i = p + 1; while(*i && (*i != lch)){ if(*i == fch){ i = NULL; break; } ++i; } if((i != NULL) && (*i == lch)){ p = i + 1; continue; } } ++s; ++p; } return t; } int main(void){ char s[] = "[XXX]+[YYYYYYY] = [END]"; puts(s); puts( remove_s(s, '[', ']') ); return 0; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д