Есть кусок кода, который ломает мой мозг:
int timeNow = DateTime.Now.Hour;
//int timeNow = 6;
string hi = "";
if ((timeNow >= 6) & (timeNow <= 12))
hi = "Доброе утро, ";
else if ((timeNow >= 12) & (timeNow <= 18))
hi = "Добрый день, ";
else hi = "Добрый вечер, ";
labelHello.Text = hi + getName() + "!";
Проблема в следующем - какое бы значение не передавалось от DateTime.Now.Hour в переменную timeNow, ни одно из условий не выполняется. Проверил все досконально через отладчик.
DateTime.Now.Hour = 6 (скрин ниже)
Дальше timeNow = 6
Казалось бы, тут проверка должна выполниться, если я все правильно понимаю, но
Нет. В итоге переменной hi присваивается значение "Добрый вечер". Я уже и вручную как видите ставил значение 6, и 7 пробовал, и 13, проверки так или иначе не выполняются.
В чем тут дело?