Jump to content

    
Sign in to follow this  
ViKo

STM32F207

Recommended Posts

Это который? Мне второй вариант симпатичнее, меньше скобок в конце.

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

 

Вопрос, какие скобочки сначала, а какие потом.

А, нет, поспешил. Аплодирую вашей самонадеянности :biggrin:

Share this post


Link to post
Share on other sites

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

 

Для Golikov A.

Как минималист, предпочитаю краткость, настолько, насколько это допустимо. Мне так проще. Комментариев к очевидным местам не пишу. У меня перед этим блоком есть пара строк комментариев, где описаны условия. Но не в виде "если флаг не равен нулю", а "если принято сообщение".

Share this post


Link to post
Share on other sites

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

 

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

 

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

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

 

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

 

а минимализм.... я даже не люблю

temp = cond ? 1 : 0;

а теперь еще лямда функций понаделали...

Share this post


Link to post
Share on other sites
scifi, я прочитал 2 книги по С, КиР и Шилдта. Ни там, ни там я не видел описанного свойства && ||.

 

Не занудства ради, а пользы для:

Керниган и Ричи

2.12. Старшинство и порядок вычисления

 

Share this post


Link to post
Share on other sites
Не занудства ради, а пользы для:

Керниган и Ричи

2.12. Старшинство и порядок вычисления

Там только упоминается в скобках "Исключением являются &&, ||, ?: и ','."

А для пользы в разделе 2.6 описано с примерами то, что нужно. Да, пролетело было мимо, а теперь внедрено в моск. :rolleyes:

А у Шилдта на этот счет - ничего.

 

а минимализм.... я даже не люблю

temp = cond ? 1 : 0;

А я тащусь... :biggrin:

#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;

Share this post


Link to post
Share on other sites
scifi, я прочитал 2 книги по С, КиР и Шилдта. Ни там, ни там я не видел описанного свойства && ||. К чему ваш сарказм?

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

 

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

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

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.

Оч. рекомендую туда заглядывать.

Share this post


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

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

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

Оч. рекомендую туда заглядывать.

Это да. Правда, там труднее копаться. Но надо.

Share this post


Link to post
Share on other sites
На это я пойти не могу. Я периодически заглядываю в таблицу приоритетов, но лишних скобок не ставлю. Это противоречит моим принципам.

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

 

Это да. Правда, там труднее копаться. Но надо.

А я привык. На любой вопрос нахожу ответ за 5 минут максимум.

Share this post


Link to post
Share on other sites
Не надо писать код, для понимания которого программисту нужно лезть в справочники.
"Создайте программу, которой может пользоваться дурак, и только дурак захочет ей пользоваться".

 

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

Share this post


Link to post
Share on other sites
"Создайте программу, которой может пользоваться дурак, и только дурак захочет ей пользоваться".

 

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

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

Share this post


Link to post
Share on other sites
Как раз сейчас читаю Макконелл"Совершенный код" и он с вами не согласен насчет излишеств.

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

Share this post


Link to post
Share on other sites

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

 

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

 

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

 

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

 

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

 

 

 

Share this post


Link to post
Share on other sites

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

Edited by kostyan

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this