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

 
 
> О стилистике при оформлении исходников, для начинающих и не только
sergey sva
сообщение Feb 11 2010, 09:48
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 546
Регистрация: 23-05-07
Из: Самарская область Сызрань
Пользователь №: 27 923



Нужно инвертировать один бит, в переменной, подозреваю что делается очень просто smile.gif, но что то не соображу как.

#define dataflag (1<<6)
ReturnValue =(ReturnValue ~ dataflag);
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
rezident
сообщение Feb 11 2010, 12:06
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(sergey sva @ Feb 11 2010, 14:48) *
#define dataflag (1<<6)
Не в тему, но... есть устоявшееся правило: макросы принято обозначать заглавными буквами, а переменные и функции прописными или сочетанием заглавных и прописных. Так проще воспринимается текст исходника. В приложении русскоязычный перевод Application Note (AN-2000) "Стандарт кодирования на Си", от Micrium, Inc.

Поскольку невольно мое сообщения послужило началом своего рода оффтопка, то выделил подветку из http://electronix.ru/forum/index.php?showtopic=72745 в отдельную тему.

Сообщение отредактировал rezident - Feb 13 2010, 19:58
Прикрепленные файлы
Прикрепленный файл  micrium_an_2000_rus.pdf ( 166.36 килобайт ) Кол-во скачиваний: 1408
 
Go to the top of the page
 
+Quote Post
sigmaN
сообщение Feb 24 2010, 19:19
Сообщение #3


I WANT TO BELIEVE
******

Группа: Свой
Сообщений: 2 617
Регистрация: 9-03-08
Пользователь №: 35 751



Ежу понятно, что операция && не может быть выполнена первой, т.к. для начала у неё должны быть операнды, которые какраз надо вычислить.
И скобки там очень даже помагают сразу это понять, а не лезть в таблицу приоритетов(в голове или по F1 - не важно).


--------------------
The truth is out there...
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Feb 24 2010, 20:41
Сообщение #4


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

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



Цитата(sigmaN @ Feb 25 2010, 00:19) *
Ежу понятно, что операция && не может быть выполнена первой, т.к. для начала у неё должны быть операнды, которые какраз надо вычислить.
И скобки там очень даже помагают сразу это понять, а не лезть в таблицу приоритетов(в голове или по F1 - не важно).


Ежу - понятно, а вам, чтобы понять - нужны скобки? smile.gif))


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
zltigo
сообщение Feb 24 2010, 21:23
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(AHTOXA @ Feb 24 2010, 23:41) *
Ежу - понятно, а вам, чтобы понять....

Проблемы не в понимании, проблемы в читаемости. Для читаемости полезна прежде всего легкость узнаваемости знакомых конструкций, слов. Конструктивными элементами формирующими легко узнаваемые и распознаваемые конструкции и являются скобочки, отступы, разделители... буквы, цифры, символы не являются конструктивными элементами - они наполнитель.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Feb 24 2010, 21:58
Сообщение #6


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

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



Цитата(zltigo @ Feb 25 2010, 02:23) *
Проблемы не в понимании, проблемы в читаемости. Для читаемости полезна прежде всего легкость узнаваемости знакомых конструкций, слов.

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

Тоже верно. Но зачем в конструкции
Код
if(x < 2)
добавлять к скобочкам (которые уже разделители) ещё и пробелы:
Код
if( x < 2 )

?


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
zltigo
сообщение Feb 24 2010, 22:03
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(AHTOXA @ Feb 25 2010, 00:58) *
Тоже верно. Но зачем в конструкции
Код
if(x < 2)
добавлять к скобочкам (которые уже разделители) ещё и пробелы:
Код
if( x < 2 )

Для того, что-бы отделить собственно конструкцию
if( .... )
от ее содержимого
x<2
С этой-же целью после if перед скобкой отсутствует пробел.

Цитата(AHTOXA @ Feb 25 2010, 00:58) *
Так что, по большому счёту, мы сейчас спорим о вкусах.

Я не спорю, я просто привел в противовес пример своего форматирования.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 04:12
Рейтинг@Mail.ru


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