Вопросы по коду.

 

Не могу найти инфу что значит  if(!load)? 

Типа начнем, если загружено что-то? А зачем "!" ?

 
если не загружено
 
gnesnyi:

Не могу найти инфу что значит  if(!load)? 

Типа начнем, если загружено что-то? А зачем "!" ?

load логическая переменная может иметь значение или true (1) или false(0). Восклицательный знак это булева операция означающая отрицание или по другому НЕ. По русски читается так: Если НЕ. Условие будет выполнено если переменная load равна false. Если переменная load равна true то условие не выполняется. 

 
Vitalii Ananev #:

load логическая переменная может иметь значение или true (1) или false(0). Восклицательный знак это булева операция означающая отрицание или по другому НЕ. По русски читается так: Если НЕ. Условие будет выполнено если переменная load равна false. Если переменная load равна true то условие не выполняется. 

Не вводите людей в заблуждение. false это 0 — всё остальное true.

 
Alexey Viktorov #:

Не вводите людей в заблуждение. false это 0 — всё остальное true.

Напишите в коде:
if( true==10 ) { Print("true==10"); }
и посмотрите, произойдет ли вывод на печать.
 
Sergey Gridnev #:
Напишите в коде:
if( true==10 ) { Print("true==10"); }
и посмотрите, произойдет ли вывод на печать.

Наверное имелось ввиду что десять в булевом запросе даст тру, а 0 фалсе.

if(10)Print("10"); else  Print("0");

if(0) Print("10");else  Print("0");

 
Valeriy Yastremskiy #:

Наверное имелось ввиду что десять в булевом запросе даст тру, а 0 фалсе.

if(10)Print("10"); else  Print("0");

if(0) Print("10");else  Print("0");

Просто, Алексей пишет: "не вводите в заблуждение", но при этом сам вводит в заблуждение.
 
Sergey Gridnev #:
Просто, Алексей пишет: "не вводите в заблуждение", но при этом сам вводит в заблуждение.

синтаксис штука тонкая))))

 
Друзья, огромное спасибо за помощь.
 
if ((int)TimeCurrent() >= sekunda+pause && allow){
  otkat=true;

  allow=false;}

allow использую как выключатель, чтобы функция работала один раз.

Существует ли не очень сложный способ дать функции исполниться один раз и не добавлять новые переменные?

 
gnesnyi #:
if ((int)TimeCurrent() >= sekunda+pause && allow){
  otkat=true;

  allow=false;}

allow использую как выключатель, чтобы функция работала один раз.

Существует ли не очень сложный способ дать функции исполниться один раз и не добавлять новые переменные?

В любом случае нужена какая-то "память", что функция отработала, явная - в виде переменной, или неявная - если это можно понять по косвенным признакам.