About ILE C/C++ Language Reference (SC09-7852-01)

The C/C++ Language Reference describes the syntax, semantics, and IBM® implementation of the C and C++ programming languages. Syntax and semantics constitute a complete specification of a programming language, but complete implementations can differ because of extensions. The IBM implementations of Standard C and Standard C++ attest to the organic nature of programming languages, reflecting pragmatic considerations and advances in programming techniques, which are factors that influence growth and change. The language extensions to C and C++ also reflect the changing needs of modern programming environments.

The aims of this reference are to provide a description of the C and C++ languages outside of any comprehensive historical context, and to promote a programming style that emphasizes portability. The expression Standard C is a generic term for the current formal definition of the C language, preprocessor, and runtime library. The expression is ambiguous because subsequent formal definitions of the language have appeared while implementations of its predecessors are still in use. This reference describes a C language consistent with the C89 language level. To avoid further ambiguity and confusion with K&R C, this reference uses ISO C to mean Standard C, avoiding the term Standard C, and the term K&R C to refer to the C language plus the generally accepted extensions produced by Brian Kernighan and Dennis Ritchie (K&R C) that were in use prior to ISO C. The expression Standard C++ refers to the latest currently approved C++ language Standard (ISO/IEC 14882:2003).

The C and C++ languages described in this reference are based on the following standards:

This document contains references to C99. C99 functions are only supported by ILE C++ and are not supported by ILE C. ILE C supports the C89 language level with some extensions.

OS/400 The C++ language described in this reference is consistent with Standard C++ and documents the features supported by the IBM C++ compiler.



[ Top of Page | Previous Page | Next Page | Contents | Index ]