Перемещение по полным строкам, а не по символам - за исключением случаев поиска следующего конца строки.

аюсь создать функцию, которая будет определять, есть ли последовательные строки в массиве символов, которые идентичны.

Например, если массив char содержит:

Здравствуй

Привет

Привет

Привет

Привет

тогда массив будет изменен на

Здравствуй

Привет

По сути, я хочу обнаружить последовательные идентичные строки и удалить их, чтобы осталась только одна из них. Если одна строка идентична предыдущей, но они не являются последовательными, это нормально.

Действительно, вся строка не обязательно должна быть одинаковой, но по крайней мере первые 79 или MAXCHARS должны быть идентичными.

Кроме того, я не хочу делать это путем записи в промежуточный файл. В идеале я бы вместо этого хранил данные в массивах.

Я думал что-то вроде:

    int deleteRepeats(char *a)
 {
         int i;
          for (i=0; i<=MAXCHARS; i++) {
          if (a[i] != '\n')
              /* copy into new array /*
        }
 }

но я несколько потерян Я не хочу печатать массив прямо сейчас, потому что я буду изменять его позже в моей программе; Мне все еще нужно использовать.

Любая помощь / решение с благодарностью. Спасибо.

Ответы на вопрос(1)

Ваш ответ на вопрос