Задача такая: даны два файла, считываем из них строки и как только найдем первое различие выводим этот символ на экран. Например если в одном файле есть "aaaaddezz", в другом "aaaaddhzz", то должен вывести "h". Задачка правда легкая, только у меня выводит всю строку, а не первый различный символ. До меня чето недоходит. Подскажите где подправить код надо:
Проверил ты на равенство:
k=strcmp (line1,line2);
...
if(strcmp(line1, line2)) { // этого достаточно, не надо проверять на +/- 1
char *p1 = line1, *p2 = line2;
while(*p1++ == *p2++); // пока символы одинаковы - продвигаемся дальше
printf("%c\n", *(--p1));
}
...
Это выводит предыдущий символ что-ли:
Да, потому что while(*p1++ == *p2++) "проскакивает" его, надо вернуться на один назад...
Всё, разобрался. Спасибо огромное, volvo.