zHz00 Untitled

вторник, 06 ноября 2018
23:59 Нуар
Очевидно, что локальная переменная действует только в своей области видимости. Если в область видимости осуществлён повторный вход, значение не сохранится.

Си++, да и Си достаточно новой версии развращают тем, что можно локальные переменные об'являть в любом месте, а не только в начале блока (или в начале функции, как в Паскале).

Обычно считается хорошим стилем -- об'являть переменную непосредственно перед использованием. Но это приводит к неожиданным факапам.

int main()
{
//инициализация контроллера
for(;; )//главный цикл
{
//пять страниц кода
int state=0;//состояние автомата
//пусть автомат будет простой
//входных сигналов нет
//на каждом шагу переходит в соседнее
//из двух состояний
if(state==0)
{
state=1;
//действия
}
else
{
state=0;
//действия
}
}
}
Долго думал, почему автомат всё время в нулевом состоянии и в первое не переходит? А вот. Пришлось переносить state в начало main().

@темы: Программирование, Говнокод

URL
Этот кофе уже просто бесит.. но не могу без него. Без нег...
мамочки, я так давно его не видела... блин, нельзя видеть...
лучше бы никого не видела... ненавижу маршрутки. Всегда т...
Артист: Дельфин Альбом: Глубина резкости Сонга: Надеж...
больше всего, наверное, я не люблю вспоминать прошлое... ...
[*]www.wreckedexotics.com/index2.html Вы когда-нибудь ...

07.11.2018 в 04:56

07.11.2018 в 04:56
Можно статической ее сделать.
URL

07.11.2018 в 18:44

07.11.2018 в 18:44
Foul thing, c языка кончиков пальцев снял :)

zHz00, ошибка в теме: Прогроммирование.
URL

08.11.2018 в 01:19

08.11.2018 в 01:19
Foul thing, можно! Но есть побочный эффект в виде сохранения значения между вызовами функции. В данном случае это роли не играет, т.к. мейн вызывается только один раз, так что действительно можно было сделать так.
roadischosen, спасибо, исправил.
URL

08.11.2018 в 13:58

08.11.2018 в 13:58
мейн
Кун?

URL

09.11.2018 в 00:02

09.11.2018 в 00:02
RetXiRT suiR@ttig@$, тян!
URL
Добавить комментарий

Расширенная форма

Подписаться на новые комментарии
Получать уведомления о новых комментариях на E-mail