Defining Programming Standards   
for Professional Programmers 
  

         

Home

Contents

1: Standards

2: Psychological Factors

3: General Principles

4: Commenting

5: Naming

6: Code Layout

7: File Layout

8: Language Usage

9: Data Usage

10: Programming Usage

11: Implementing Standards

A: Example Standard

B: References

C: Glossary

Syque

About

Share this page:

Google
C Style
syque.com
Web

 

 

Books and
more at:

USA:

In association with amazon.com

UK:

In Association with Amazon.co.uk

Canada:

In Association with amazon.ca

 

 

CHAPTER 6 : Layout

PART 3 : LAYOUT

CHAPTER 6 : Code Layout
6.1 Basic principles of code layout
6.2 Use of Spaces
6.3 Use of blank lines
6.4 Use vertical alignment
6.5 Indentation level
6.6 Line wrapping
6.7 Braces
6.8 Use of parentheses
6.9 Nested single statement
6.10 Empty statements
6.11 'else..if'
6.12 'switch' statements
6.13 'do..while'
6.14 Labels
6.15 Data declarations
6.16 Function declaration
6.17 Preprocessor commands
6.18 Summary

<--Prev page | Next page -->

 

6.18  Summary

  • Write code in a hierarchy of chunks.
  • Use white space to separate chunks - but don't overuse it.
  • Put one action per line.
  • Use Combs rather than Toothbrushes to save horizontal space and help vertical alignment.
  • Use spaces to create horizontal chunking.
  • No spaces in object references.
  • No space between unary operator and operand, but do space other side.
  • Balance spacing either side of binary operators.
  • No space before separators (comma, semicolon) but do space after.
  • Balance spacing inside parentheses.
  • No space between function name and parenthesis.
  • Space keywords.
  • Use blank lines to create vertical chunking.
  • Use vertical alignment to indicate association.
  • Choose an indentation level (eg. 4 spaces).
  • Indent continuation lines past the current indent column.
  • Decide on where to put continuation operator.
  • Use precedence rules to decide where to split an expression.
  • In a complex expression, treat parentheses as braces.
  • Wrap assignments past the equals sign.
  • Wrap conditional expressions before the operators.
  • Wrap for statements after the semicolons. Indent further if more wrapping occurs.
  • Wrap long function calls with one parameter per line.
  • Choose a brace style. Use in struct's etc. too.
  • Use parentheses to chunk horizontally and to emphasize priority.
  • Avoid deep (more than about 3) levels of parentheses nesting.
  • In macros, parenthesize everything.
  • Use braces with a nested single statement unless it, and the preceding line, are visibly and logically simple.
  • Show an empty statement on a single line (choose style).
  • Keep else..if vertically under original if.
  • Put case's directly under the switch and indent resultant code.
  • For long case's either use braces or break out the code into another function.
  • Put the while in a do..while statement on the same line as the closing brace.
  • Start labels in column 1.
  • Order declarations as: storage class specifier, type qualifier.
  • Start each declaration on a new line.
  • Use vertical alignment to ease scanning of declarations.
  • Don't combine declaration and definition of struct.
  • Define constants near associated declarations.
  • Define function declaration layout.
  • Consider putting the return type on the line before the function name.
  • Format preprocessor lines nicely too.
  • Lay out constants just like data
  • Split lines of complex macros using normal layout rules.

 

 

 

  © Syque 1995-2013

Massive Content -- Maximum Speed