Я видел этот кусок кода сегодня:Хотя зсапЕ с логическим оператором
while(scanf("%d %d",&x,&y),x||y)
{
....
Из того, что я понимаю, это входит в цикл, если некоторые из значений (х или у) истинно.
Поскольку scanf docs говорит:
В случае успеха функция возвращает количество элементов списка аргументов успешно заполненного. Этот счетчик может соответствовать ожидаемому числу элементов или быть меньше (даже нулевым) из-за соответствующего сбоя, ошибки чтения или досягаемости конца файла.
Я переписан код:
while(scanf("%d %d",&x,&y) >= 1)
{
....
Но на online programming challenge site первом во время работы, то второй не удается.
Я прав, исходя из своих предположений? Каковы различия между этими двумя частями кода?
(я мечение, как C++, потому что я испытал в C++ 4.8.2 - GNU C++ Compiler)
Это был именно тот случай. Хороший улов –