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

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> STM32F207, Проверить USART_SR_RXNE и DR
scifi
сообщение Mar 3 2015, 19:11
Сообщение #16


Гуру
******

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



Цитата(ViKo @ Mar 3 2015, 17:07) *
Это который? Мне второй вариант симпатичнее, меньше скобок в конце.

Аплодирую вашей эрудированности.

Цитата(ViKo @ Mar 3 2015, 17:28) *
Вопрос, какие скобочки сначала, а какие потом.

А, нет, поспешил. Аплодирую вашей самонадеянности biggrin.gif
Go to the top of the page
 
+Quote Post
ViKo
сообщение Mar 3 2015, 19:58
Сообщение #17


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

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



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

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


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



хорошо вам минималистам.

в каком то из контрактов у меня было требования - коменты к каждой строке...

Код
int i = 0; //параметр цикла

//пустая переменная для вычитывания FIFO UART
int dummy = dummy; //инициализируем ей-же чтобы не было варнинга


и так далее... после 3-4 лет, так и пишу коменты по привычке почти к каждой строчке... Пару раз мне помогали, но гораздо больше помогают тем кто будет поддерживать после вас.

а минимализм.... я даже не люблю
temp = cond ? 1 : 0;
а теперь еще лямда функций понаделали...
Go to the top of the page
 
+Quote Post
VAI
сообщение Mar 4 2015, 04:58
Сообщение #19


Профессионал
*****

Группа: Модераторы
Сообщений: 1 120
Регистрация: 17-06-04
Пользователь №: 37



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


Не занудства ради, а пользы для:
Керниган и Ричи
2.12. Старшинство и порядок вычисления


--------------------
Если зайца бить, его можно и спички научить зажигать
Сколько дурака не бей - умнее не будет. Зато опытнее
Go to the top of the page
 
+Quote Post
ViKo
сообщение Mar 4 2015, 06:28
Сообщение #20


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

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



Цитата(VAI @ Mar 4 2015, 07:58) *
Не занудства ради, а пользы для:
Керниган и Ричи
2.12. Старшинство и порядок вычисления

Там только упоминается в скобках "Исключением являются &&, ||, ?: и ','."
А для пользы в разделе 2.6 описано с примерами то, что нужно. Да, пролетело было мимо, а теперь внедрено в моск. rolleyes.gif
А у Шилдта на этот счет - ничего.

Цитата(Golikov A. @ Mar 4 2015, 00:49) *
а минимализм.... я даже не люблю
temp = cond ? 1 : 0;

А я тащусь... biggrin.gif
Код
#define WDELAY_START(US);                        \
  TIM7->PSC = ((US < 65536) ? (60 - 1) :                \
          ((US < 655360) ? (600 - 1) :                 \
          ((US < 6553600) ? (6000 - 1) : (60000 - 1))));        \
  TIM7->ARR = ((US < 65536) ? (US - 1) :                \
          ((US < 655360) ? (US / 10 - 1) :                \
          ((US < 6553600) ? (US / 100 - 1) : (US / 1000 - 1))));    \
  TIM7->EGR = TIM_EGR_UG;                        \
  TIM7->SR = 0;                                \
  TIM7->CR1 |= TIM_CR1_CEN;
Go to the top of the page
 
+Quote Post
scifi
сообщение Mar 4 2015, 06:49
Сообщение #21


Гуру
******

Группа: Свой
Сообщений: 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
ViKo
сообщение Mar 4 2015, 07:01
Сообщение #22


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

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



Цитата(scifi @ Mar 4 2015, 09:49) *
Вот об этом и речь. Не надо писать код, для понимания которого программисту нужно лезть в справочники. Я, к примеру, не помню всю таблицу приоритетов операторов, поэтому ставлю скобки, когда есть сомнения, и другим советую.

На это я пойти не могу. Я периодически заглядываю в таблицу приоритетов, но лишних скобок не ставлю. Это противоречит моим принципам.
Цитата
Вообще-то последней инстанцией по этим вопросам является даже не форум, а стандарт языка.
Оч. рекомендую туда заглядывать.

Это да. Правда, там труднее копаться. Но надо.
Go to the top of the page
 
+Quote Post
scifi
сообщение Mar 4 2015, 07:36
Сообщение #23


Гуру
******

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



Цитата(ViKo @ Mar 4 2015, 10:01) *
На это я пойти не могу. Я периодически заглядываю в таблицу приоритетов, но лишних скобок не ставлю. Это противоречит моим принципам.

Тогда вам сюда. Уверен, сможете выступить очень достойно biggrin.gif

Цитата(ViKo @ Mar 4 2015, 10:01) *
Это да. Правда, там труднее копаться. Но надо.

А я привык. На любой вопрос нахожу ответ за 5 минут максимум.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Mar 4 2015, 08:03
Сообщение #24


Гуру
******

Группа: Модераторы
Сообщений: 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
Сообщение #25


Знающий
****

Группа: Свой
Сообщений: 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
Сообщение #26


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

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



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

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


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Mar 4 2015, 11:33
Сообщение #27


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



Да пустое все...

если что-то лишне разжевано - это можно не читать

если чего-то не хватает, то это надо допридумывать.

Первое просто, второе сложнее... Так что энергетически выгоднее код с излишком коментов, чем с недостатком...

Скобки, структура текста и коменты, позволяет отобразить не только суть конкретной конструкции, но и ход мысли, структуру архитектуры... но это дело каждого...


Go to the top of the page
 
+Quote Post
kostyan
сообщение Mar 4 2015, 11:59
Сообщение #28


Частый гость
**

Группа: Участник
Сообщений: 121
Регистрация: 8-11-05
Пользователь №: 10 577



Красиво структурированный читаемый код, и "только дурак" - имхо несовместимые понятия. Особенно для проектов, в которых трудятся программистов в количестве больше одного.

Сообщение отредактировал kostyan - Mar 4 2015, 12:01
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 17th June 2025 - 18:52
Рейтинг@Mail.ru


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