Задать вопрос
@amaterasu0

Почему этот код на С является рабочим?

Мне непонятно почему данное выражение после чего *s додёт до '\0' должно стать не истинным.

void copy(char *s, char *t) {
    while (*s++ = *t++)
        ;
}
  • Вопрос задан
  • 106 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Разработчик C++
    9 месяцев
    Далее
  • Нетология
    Специалист по информационной безопасности + нейросети
    12 месяцев
    Далее
  • Компьютерная академия «TOP»
    Учебная программа “Разработка программного обеспечения”
    30 месяцев
    Далее
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Потому что результатом операции присваивания является присвоенное значение.
А 0 приводится к false.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@vanyamba-electronics
while (*s++ == *t++)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы