C A Reference Manual

Samuel P. Harbison III, Guy L. Steele Jr

Publisher: Prentice Hall, 1984, 352 pages

ISBN: 0-13-110008-4

Keywords: Programming

Last modified: April 12, 2021, 8:54 a.m.

This new book is for the reader who is, or wants to become, a serious C programmer capable of engineering large and complex systems in C.

Beginning with an overview of the C language and the environment in which C programs are compiled and executed, the book:

  • includes a complete description of the full language and of the variations in the language found in some C compilers,
  • discusses many of the C programming conventions and styles that have arisen over the years,
  • presents the language in a "bottom-up" order: the lexical structure, the preprocessor, declarations, types, expressions, statements, functions, and programs,
  • contains references to descriptions of other relevant language features in each section.
  • provides a large chapter on the standard C runtime library routines.
  1. Introduction to C
    1. Who Defines C?
    2. An Overview of C Programming
    3. Syntax Notation
  2. Lexical Elements
    1. The Source Character Set
    2. Comments
    3. Tokens
    4. Operators and Separators
    5. Identifiers
    6. Reserved Words
    7. Constants
  3. The C Preprocessor
    1. Preprocessor Commands
    2. Preprocessor Lexical Conventions
    3. Definition and Replacements
    4. File Inclusion
    5. Conditional Compilation
    6. Explicit Line Numbering
  4. Declarations
    1. Organization of Declarations
    2. Terminology
    3. Storage Class Specifiers
    4. Type Specifiers
    5. Declarators
    6. Initializers
    7. Implicit Declarations
    8. External Names
  5. Types
    1. Storage Units
    2. Integer Types
    3. Floating-point Types
    4. Pointer Types
    5. Array Types
    6. Enumeration Types
    7. Structure Types
    8. Union Types
    9. Function types
    10. Void
    11. Typedef Names
    12. Type Equivalence
    13. Type Names and Abstract Declarators
  6. Type Conversions
    1. Representation Changes
    2. Trivial Conversions
    3. Conversions to Integer Types
    4. Conversions to Floating-point Types
    5. Conversions to Structure and Union Types
    6. Conversions to Enumeration Types
    7. Conversions to Pointer Types
    8. Conversations to Array and Function Types
    9. Conversions to the Void Type
    10. The Casting Conversions
    11. The Assignment Conversions
    12. The Usual Unary Conversions
    13. The Usual Binary Conversions
    14. The Function Argument Conversions
    15. Other Function Conversions
  7. Expressions
    1. Objects and LValues
    2. Expressions and Precedence
    3. Primary Expressions
    4. Unary Operator Expressions
    5. Binary Operator Expressions
    6. Logical Operator Expressions
    7. Conditional Expressions
    8. Assignment Expressions
    9. Sequential Expressions
    10. Constant Expressions
    11. Order of Evaluation
    12. Discarded Values
    13. Compiler Optimization of Memory Access
  8. Statements
    1. General Syntactic Rules for Statements
    2. Expression Statements
    3. Labeled Statements
    4. Compound Statement
    5. Conditional Statement
    6. Iterative Statements
    7. Switch Statement: Case and Default Labels
    8. Break and Continue Statements
    9. Return Statement
    10. Goto Statement and Named Labels
    11. Null Statement
  9. Functions
    1. Function Definitions
    2. Function Types
    3. Formal Parameter Declarations
    4. Adjustments to Parameter Types
    5. Parameter-Passing Conventions
    6. Agreement of Formal and Actual Parameters
    7. Function Return Types
    8. Agreement of Actual and Declared Return Type
  10. Program Structure
    1. Modularization
    2. Designing the Stack Module
    3. Data Structures
    4. Robustness
    5. Allocating and Deallocating Stacks
    6. Operations
    7. Packaging the Module
  11. The Run-time Library
    1. Character Processing
    2. String Processing
    3. Mathematical Functions
    4. Storage Allocation
    5. Standard I/O
    6. Error Codes
  1. The ASCII Character Set
  2. Syntax of the C Language
    1. Lexical
    2. Preprocessor
    3. Declarations
    4. Types
    5. Expressions
    6. Statements
    7. Functions
  3. LALR(1) Grammar for C
    1. Terminal Symbols
    2. Productions

Reviews

C A Reference Manual

Reviewed by Roland Buresund

Very Good ******** (8 out of 10)

Last modified: May 21, 2007, 2:56 a.m.

Together with K&R, this is the bible for any C programmer. All you ever wanted to know about the language in an easily accessible book. A must read.

Comments

There are currently no comments

New Comment

required

required (not published)

optional

required

captcha

required