реклама на сайте
подробности

 
 
> STM32F207, Проверить USART_SR_RXNE и DR
ViKo
сообщение Mar 3 2015, 13:31
Сообщение #1


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Могу ли я задать вместо (сначала первое, затем второе)
if (USART3->SR & USART_SR_RXNE) {
if (USART3->DR == 24) {
Задать сразу
if (USART3->SR & USART_SR_RXNE && USART3->DR == 24) {
В этом случае гарантии, что сначала прочитается статус, а потом данные, нет, правильно?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ViKo
сообщение Mar 3 2015, 19:58
Сообщение #2


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



scifi, я прочитал 2 книги по С, КиР и Шилдта. Ни там, ни там я не видел описанного свойства && ||. К чему ваш сарказм? Вы тоже не с рождения обзавелись эрудицией. Вот я задал вопрос, получил ответы, поблагодарил. Обогатился знаниями.

Для Golikov A.
Как минималист, предпочитаю краткость, настолько, насколько это допустимо. Мне так проще. Комментариев к очевидным местам не пишу. У меня перед этим блоком есть пара строк комментариев, где описаны условия. Но не в виде "если флаг не равен нулю", а "если принято сообщение".
Go to the top of the page
 
+Quote Post
scifi
сообщение Mar 4 2015, 06:49
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(ViKo @ Mar 3 2015, 22:58) *
scifi, я прочитал 2 книги по С, КиР и Шилдта. Ни там, ни там я не видел описанного свойства && ||. К чему ваш сарказм?

Вот об этом и речь. Не надо писать код, для понимания которого программисту нужно лезть в справочники. Я, к примеру, не помню всю таблицу приоритетов операторов, поэтому ставлю скобки, когда есть сомнения, и другим советую.

Цитата(ViKo @ Mar 3 2015, 22:58) *
Вы тоже не с рождения обзавелись эрудицией. Вот я задал вопрос, получил ответы, поблагодарил. Обогатился знаниями.

Вообще-то последней инстанцией по этим вопросам является даже не форум, а стандарт языка.
Цитата
Unlike the bitwise binary & operator, the && operator guarantees left-to-right evaluation; there is a sequence point after the evaluation of the first operand. If the first operand compares equal to 0, the second operand is not evaluated.

Оч. рекомендую туда заглядывать.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Mar 4 2015, 08:03
Сообщение #4


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(scifi @ Mar 4 2015, 08:49) *
Не надо писать код, для понимания которого программисту нужно лезть в справочники.
"Создайте программу, которой может пользоваться дурак, и только дурак захочет ей пользоваться".

Гордое звание "программист" подразумевает наличие некоторых базовых знаний. Поведение операторов языка и правила неявных приведений типов входят в эти базовые знания. Добавление в исходник излишеств вроде ==0, (a * b ) + c, комментариев к очевидным действиям только отвлекает и затрудняет понимание алгоритма.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
WHALE
сообщение Mar 4 2015, 08:31
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 902
Регистрация: 2-01-06
Из: Краснодар
Пользователь №: 12 768



Цитата(Сергей Борщ @ Mar 4 2015, 12:03) *
"Создайте программу, которой может пользоваться дурак, и только дурак захочет ей пользоваться".

Гордое звание "программист" подразумевает наличие некоторых базовых знаний. Поведение операторов языка и правила неявных приведений типов входят в эти базовые знания. Добавление в исходник излишеств вроде ==0, (a * b ) + c, комментариев к очевидным действиям только отвлекает и затрудняет понимание алгоритма.

Как раз сейчас читаю Макконелл"Совершенный код" и он с вами не согласен насчет излишеств.


--------------------
"Hello, word!" - 17 errors 56 warnings
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Mar 4 2015, 10:16
Сообщение #6


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(WHALE @ Mar 4 2015, 13:31) *
Как раз сейчас читаю Макконелл"Совершенный код" и он с вами не согласен насчет излишеств.

Я не читал эту книгу, но судя по здешним отзывам о ней, она мне уже не нравится sm.gif


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- ViKo   STM32F207   Mar 3 2015, 13:31
- - aaarrr   Цитата(ViKo @ Mar 3 2015, 16:31) В этом с...   Mar 3 2015, 13:45
|- - ViKo   Цитата(aaarrr @ Mar 3 2015, 16:45) Нет: ...   Mar 3 2015, 14:00
|- - Obam   Цитата(ViKo @ Mar 3 2015, 18:00) То есть,...   Mar 3 2015, 14:18
|- - ViKo   Цитата(Obam @ Mar 3 2015, 17:18) Сначала ...   Mar 3 2015, 14:28
|- - aaarrr   Цитата(ViKo @ Mar 3 2015, 17:28) Вопрос, ...   Mar 3 2015, 14:33
|- - Obam   Цитата(ViKo @ Mar 3 2015, 18:28) Вопрос, ...   Mar 3 2015, 14:53
|- - ViKo   Цитата(Obam @ Mar 3 2015, 17:53) (a + x) ...   Mar 3 2015, 14:58
- - Сергей Борщ   И его выполнение прекращается как только получен о...   Mar 3 2015, 13:58
- - scifi   А вот не надо хитромудрый код плодить. Написать в ...   Mar 3 2015, 14:05
|- - ViKo   Цитата(scifi @ Mar 3 2015, 17:05) А вот н...   Mar 3 2015, 14:07
- - ViKo   Для полного просветления: а если я возьму проверку...   Mar 3 2015, 14:42
|- - aaarrr   Цитата(ViKo @ Mar 3 2015, 17:42) Для полн...   Mar 3 2015, 14:56
- - Golikov A.   ну какая разница? если у вас значение может сменит...   Mar 3 2015, 17:44
- - Сергей Борщ   Для операторов && и || порядок вычисления ...   Mar 3 2015, 19:03
- - scifi   Цитата(ViKo @ Mar 3 2015, 17:07) Это кото...   Mar 3 2015, 19:11
|- - VAI   Цитата(ViKo @ Mar 3 2015, 23:58) scifi, я...   Mar 4 2015, 04:58
||- - ViKo   Цитата(VAI @ Mar 4 2015, 07:58) Не занудс...   Mar 4 2015, 06:28
|- - ViKo   Цитата(scifi @ Mar 4 2015, 09:49) Вот об ...   Mar 4 2015, 07:01
||- - scifi   Цитата(ViKo @ Mar 4 2015, 10:01) На это я...   Mar 4 2015, 07:36
- - Golikov A.   хорошо вам минималистам. в каком то из контрактов...   Mar 3 2015, 21:49
- - Golikov A.   Да пустое все... если что-то лишне разжевано - эт...   Mar 4 2015, 11:33
- - kostyan   Красиво структурированный читаемый код, и "то...   Mar 4 2015, 11:59


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th August 2025 - 23:35
Рейтинг@Mail.ru


Страница сгенерированна за 0.01435 секунд с 7
ELECTRONIX ©2004-2016