Abstract for XL C/C++ Language Reference
This information supports IBM® z/OS® (5650-ZOS) and contains information about z/OS XL C/C++.
Purpose of this information
This information describes the syntax, semantics, and IBM z/OS XL C/C++ implementation of the C and C++ programming languages. Although the XL C and XL C++ compilers conform to the specifications maintained by the ISO standards for the C and C++ programming languages, the compilers also incorporate many extensions to the core languages. These extensions have been implemented with the aims of enhancing usability in specific operating environments, supporting compatibility with other compilers, and supporting new hardware capabilities. For example, on the z/OS platform, language constructs have been added to provide support for data types that are specific to the IBM System z® environment.
Who should read this information
This information is a reference for users who already have experience programming applications in C or C++. Users new to C or C++ can still use this information to find language and features unique to XL C/C++; however, this reference does not aim to teach programming concepts nor to promote specific programming practices.
How to use this information
Unless indicated otherwise, all of the text in this reference pertains to both C and C++ languages. Where there are differences between languages, these are indicated through qualifying text and other graphical elements (see below for the conventions used).
- Standard C and C++ library functions and headers. For standard C/C++ library information, refer to the Standard C++ Library Reference.
How this information is organized
This information is organized to loosely follow the structure of the ISO standard language specifications and topics are grouped into similar headings.
Conventions and qualifying elements
The following table explains the typographical conventions used in the IBM z/OS V2R1 XL C/C++ information.
Typeface | Indicates | Example |
---|---|---|
bold | Lowercase commands, executable names, compiler options, and directives. | The compiler provides basic invocation commands, xlc and xlC (xlc++), along with several other compiler invocation commands to support various C language levels and compilation environments. |
italics | Parameters or variables whose actual names or values are to be supplied by the user. Italics are also used to introduce new terms. | Make sure that you update the size parameter if you return more than the size requested. |
underlining | The default setting of a parameter of a compiler option or directive. | nomaf | maf |
monospace |
Programming keywords and library functions, compiler builtins, examples of program code, command strings, or user-defined names. | To compile and optimize myprogram.c,
enter: xlc myprogram.c -O3 . |
Most features described in this information apply to both C and C++ languages. In descriptions of language elements where a feature is exclusive to one language, or where functionality differs between languages, this information uses icons to delineate segments of text as follows:
Qualifier/Icon | Meaning |
---|---|
C only | The text describes a feature that is supported in the C language only; or describes behavior that is specific to the C language. |
C++ only | The text describes a feature that is supported in the C++ language only; or describes behavior that is specific to the C++ language. |
IBM extension | The text describes a feature that is an IBM extension to the standard language specifications. |
z/OS only | The text describes a feature that is supported only on the z/OS implementation of the compilers. |
Technical support
Additional technical support is available at the z/OS XL C/C++ Support page. This page provides a portal with search capabilities to a large selection of technical support FAQs and other support documents.
For the latest information about z/OS XL C/C++, visit product page for z/OS XL C/C++
For information about boosting performance, productivity and portability, visit IBM Z and LinuxONE Community.
If you cannot find what you need, you can e-mail: compinfo@cn.ibm.com