Здравствуйте, не могу разобраться как выйти только из одного if
if((err!=0 or msg!=0) & sound==false)
{
//Если уведомление 10 секунд
if(sound_10==true)
{
if(sound_temp>0)sound_temp--;
else
{
digitalWrite(pin_beeper,LOW);
return;
}
}
//Пищим
digitalWrite(pin_beeper, digitalRead(pin_beeper) ^ 1);
}
else digitalWrite(pin_beeper,LOW);
далее этого кода программа не идет если стоит return, мне нужно чтобы не выполнился только код: digitalWrite(pin_beeper, digitalRead(pin_beeper) ^ 1);
Опишите своими словами, как, по вашему мнению, должен работать представленный кусок кода.
Почитайте про оператор return
BOOM
26.Апрель.2025 11:54:25
3
Вы оба не поверите мне, скорее всего, но…
break;
Тут только одно важно - правильно этот оператор использовать ))
я не понял че когда и как пищать должно, но есть броненепробиваемый оператор GOTO )
есть разные мнения, но когда я учил С, пользоваться им было западло.
1 лайк
Так я ничего и не утверждаю. Я за то чтобы ТС внятно описал проблему.
А return, он же не про выход из условия, а про выход из программы…
BOOM
26.Апрель.2025 12:43:48
6
Из блока, на сколько я понимаю (процедуры, функции и тп).
2 лайка
Описался. Имел ввиду конечно из функции, подпрограммы
Вот чесн. слово)))
BABOS
26.Апрель.2025 14:56:14
10
looter1984:
только из одного if
аааа, опять все нормальные ответы разобрали…
предлагаю в функции if поднять флаг, и опустить там где надо выйти)))
вроде должно работать но это не точно)))
xDriver:
броненепробиваемый оператор GOTO )
есть разные мнения, но когда я учил С, пользоваться им было западло
дак ретурн это типа возврат, типа как прийти из магазина; а ГоуТу - ПошелНа.
v258
26.Апрель.2025 15:04:57
12
Удалить/закомментировать эту строку не предлагать?
Мишутк
26.Апрель.2025 15:17:53
13
Перенесите эту строчку в блок истины вместе с sound_temp–;
…если я правильно понял ваше желание.
Если Вам представляется необходимость такого действия, значит, Вы неправильно спроектировали условия.
Ну и, кроме того, как уже отчетливо видно из обсуждения, никто не понял, что именно Вы хотите. Так что нарисуйте блок-схему и выложите ее здесь. Тогда хоть будет, что обсуждать. Но весьма вероятно, что, нарисовав блок-схему, Вы найдете решение самостоятельно.
2 лайка