Я пытаюсь создать функцию, которая будет определять наличие последовательных строк в массиве символов, которые идентичны.
Например, если массив символов содержит:
Hi
Hello
Hello
Hello
Привет
тогда массив будет изменен на
Привет
Привет
По сути, я хочуНайдите последовательные идентичные строки и удалите их, чтобы осталась только одна из них.Если одна строка идентична предыдущей строке, но они не являются последовательными, то это нормально.
Действительно, вся строка не должна быть идентичной, но по крайней мере первые 79, или MAXCHARS, имеютбыть идентичным.
Кроме того, я не хочу делать это, записывая в промежуточный файл.В идеале я бы вместо этого хранил данные в массивах.
Я думал что-то вроде:
int deleteRepeats(char *a)
{
int i;
for (i=0; i<=MAXCHARS; i++) {
if (a[i] != '\n')
/* copy into new array /*
}
}
но я несколько растерялся.Я не хочу печатать массив прямо сейчас, потому что я буду изменять его позже в моей программе;Мне все еще нужно использовать.
Любая помощь / решение с благодарностью.Спасибо.