*pt (char *str)
{
char *pc;
pc = str;
while (*pc)
putchar(*pc++);
do {
putchar(*--pc);
} while (pc - str);
return (pc);
}
Не совсем понимаю условие цикла do while, какое значение дает вычитание этих двух указателей?
Длину строки.
pc сначала указывает на конец строки потом уменьшается уменьшается, пока не станет равным str когда они равны pc - str == 0 (условие ложно) так что можно заменить на pc != str и получить тот-же результат
Обсуждают сегодня