Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
Почему не работает такая конструкция: do{код }while((Key != 0xd)||(Key != 0x1b));?? Т.е. выполнять пока не равно 0xd или 0x1b/ По отдельности - работают. Кто знает?
Отправлено
dshabrov
(84.21.231.242)
03 июня 2010, г. 13:18
Составить ответ
|
Вернуться на конференцию
Ответы
Заработало. Спасибо за помощь. Правильно будет так: while((Key != 0xd)&&(Key != 0x1b));
-
dshabrov
(03.06.2010, 13:34:45
84.21.231.242
,
пустое
)
Не раскидывайте по программе непонятные числа. Используйте #define ИМЯ 0x1b
-
Quasy
(03.06.2010, 14:22:28
192.168.0.207,80.243.9.34
,
пустое
)
А еще такое проверь while(!(Key == 0xd)||(Key == 0x1b));
-
Codavr
(03.06.2010, 13:43:8
78.106.105.64
,
пустое
)
Приоритет операций в Си
-
доктор
(03.06.2010, 13:55:33
95.26.170.97
,
пустое
,
ссылка
)
Типичная ошибка :)
-
Codavr
(03.06.2010, 13:57:0
78.106.105.64
,
пустое
)
while(!((Key == 0xd)||(Key = 0x1b))); Выскакивает по нажатию любой кнопки.
-
dshabrov
(03.06.2010, 13:51:40
84.21.231.242
,
пустое
)
Во второй скобке надо не = ставить, а = =
-
Codavr
(03.06.2010, 13:58:1
78.106.105.64
,
пустое
)
после Key будет всегда равно 0x1b
-
доктор
(03.06.2010, 13:56:31
95.26.170.97
,
пустое
)
Чисто лигическая ошибка. Такое условие выполняется абсолюино для любого числа, в то числе и для 0x0d, и для 0x1b ...
-
Igor_Koval
(03.06.2010, 13:21:36
95.132.208.252
,
пустое
)
Виноват, "логическая" :)
-
Igor_Koval
(03.06.2010, 13:22:6
95.132.208.252
,
пустое
)
Пооже на то. Только не соображу как правильно...
-
dshabrov
(03.06.2010, 13:23:45
84.21.231.242
,
пустое
)
А что надо получить в результате :) Интуиция подсказывает заменить "или" на "и" :)
-
Igor_Koval
(03.06.2010, 13:25:13
95.132.208.252
,
пустое
)
Нужно выйти из цикла по нажатию enter(0xd) или escape(0x1b). Сейчас попробую "И"...
-
dshabrov
(03.06.2010, 13:31:15
84.21.231.242
,
пустое
)
Однако Вы правы. Заработало. Но мозгами это я понять пока не могу...
-
dshabrov
(03.06.2010, 13:33:23
84.21.231.242
,
пустое
)
На листике бумаги распишите таблицу истинности :)
-
Igor_Koval
(03.06.2010, 13:35:49
95.132.208.252
,
пустое
)
Не-Или = И-Не
-
Codavr
(03.06.2010, 13:33:20
78.106.105.64
,
пустое
)
Тогда, конечно же, "И" ...
-
Igor_Koval
(03.06.2010, 13:33:10
95.132.208.252
,
пустое
)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
скольким Омам равен эквивалент двух резисторов по 10 Ом, соединённых параллельно?:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru