Обсуждение:Язык Си в примерах
Оформление кода
править- Перенесено с /Учимся складывать#Стиль кода.
Желательно сразу показывать хороший стиль кодирования.
Например, сослаться на Саттера и не определять несколько переменных в одном операторе/строке.
Хорошо бы также сразу инициализировать переменные, а также использовать const
там, где это возможно.
Также не стоит помещать несколько операторов в одной строке. (А поставьте контрольную точку именно на операторе B в цикле, а не на входе в цикл.)
Неплохо также использовать фигурные скобки даже в случае одного оператора в while, if и т. п.
Следует также обратить внимание на использование пробелов вокруг бинарных операций. Для этого можно использовать выражение деления одного значения на значение по указателю
a = b / *p;
которое при отсутствии пробелов выглядит комментарием
a=b/*p;
Sps 13:58, 17 октября 2011 (UTC)
- Поддерживаю, кроме «не определять несколько переменных в одном операторе» (спорно) и, возможно,
const
(в общем случае — несколько загромождает код.) Использование фигурных скобок в случае «однооператорного» телаif
(илиelse
) кажется особенно полезным в случае вложения условных операторов. В случаеfor
,while
,do
— не думаю, что это столь уж оправдано. — Ivan Shmakov (talk) 07:20, 29 августа 2013 (UTC)
- Предлагаю взять за основу оформление, формируемом GNU Indent — в форме
$ indent -gnu -br -ncs
.- С одной стороны, подобное оформление (с оговорками) используется, в частности, проектами GNU и Linux.
- С другой, опция
-br
— подавляющая вынесение на отдельную строку фигурных скобок послеif
,while
, etc. — позволяет несколько сократить (по сравнению с рекомендуемым GNU оформлением) количество занимаемых кодом строк. Что может быть полезно при печати материала. - Наконец, AIUI, разрыв строки между именем функции в определении и возвращаемым ею типом требуется для корректной работы ctags,
etags
и подобных им средств.
- — Ivan Shmakov (о ▞ в) 07:05, 19 марта 2015 (UTC)