This document contains a summary of the syntax and semantics of the C programming language as implemented on the IRIS-4D™ Series workstations. It documents previous releases of the Silicon Graphics® C compilers as well as the ANSI C compiler.
The Silicon Graphics compiler system supports two modes of compilation: a 32-bit mode and a 64-bit mode. For information on compilation modes and general compiler options, see the MIPSpro Compiling, Debugging, and Performance Tuning Guide and IRIX System Programming Guide.
The term “traditional C” refers to the dialect of C described in the first edition of The C Programming Language, by Kernighan and Ritchie.
This manual also includes information formerly in the ANSI C Transition Guide. That material is now in the following chapters:
Chapter 2, “An Overview of ANSI C,” discusses some effective strategies in porting your traditional C code to ANSI C.
Chapter 3, “C Language Changes,” presents an overview of changes that the ANSI standard introduced to the language.
Chapters 4 through 10 of this manual describe the syntax and semantics of C, and specify ANSI C differences.
Chapter 4, “Lexical Conventions,” lists and defines the six classes of C tokens.
Chapter 5, “Meaning of Identifiers,” describes objects, lvalues, identifiers, and disambiguation.
Chapter 6, “Operator Conversions,” discusses object type conversions and result types.
Chapter 7, “Expressions and Operators,” defines the various types of expressions and operators and gives their order of precedence.
Chapter 8, “Declarations,” discusses type specifiers, structures, unions, declarators of various kinds, and initialization.
Chapter 9, “Statements,” describes expression, compound, selection, iteration, and jump statements.
Chapter 10, “External Definitions,” explains the syntax for external definitions.
Appendix A, “Implementation-Defined Behavior,” describes various implementation-specific aspects of the Silicon Graphics C compiler, keyed to paragraphs from the ANSI standard.
In addition to this manual, you may find the following documents useful:
MIPSpro Compiling, Debugging and Performance Tuning Guide describes the MIPSpro compiler system, Dynamic Shared Objects (DSOs), the debugger, programming tools and interfaces, and explains ways to improve program performance.
IRIX System Programming Guide covers the IRIX compiler system, programming tools, and ways to improve program performance. It also includes information on DSOs, IPC, Fonts, and Internationalization.
The ANSI C language specification is available from the American National Standards Institute (ANSI) at 1430 Broadway, New York, NY 10018, (212) 642-4900. Specify ANSI X3.159-1989 or ANSI/ISO 9899-1990. This C Language Reference Manual is not intended as a substitute for the specification.
This manual uses some typographical and notational conventions explained below.
The expression [fF] stands for “f or F.”
Filenames are italicized. For example, <stddef.h> is the file /usr/include/stddef.h.
Syntactic categories are indicated by italic type, and literal words and characters by bold type. Alternative categories are listed on separate lines. An optional entry is indicated by the subscript “opt” to indicate an optional expression enclosed in braces. For example:
{ expressionopt }
This notation is the standard BNF notation.