### Overview of the C Language

C is a programming language designed for a wide variety of programming tasks. It is used for system-level code, text processing, graphics, and in many other application areas.

The C language described here is consistent with the Systems Application Architecture Common Programming Interface (also known as the SAA C Level 2 interface), and with the International Standard C (ANSI/ISO-IEC 9899-1990[1992]). SAA Level 2 is an IBM definition of the C language that allows programmers to develop applications that can be easily transported across different SAA environments. It specifies several features of the C language that the ANSI C standard designates as implementation-defined.

On the Intel platform, the IBM C and C++ Compilers conforms to changes adopted into the International Standard C by ISO/IEC 9899:1990/Amendment 1:1994.

C supports several data types, including characters, integers, floating-point numbers, and pointers -- each in a variety of forms. In addition, C also supports arrays, structures (records), unions, and enumerations.

The C language contains a concise set of statements, with functionality added through its library. This division enables C to be both flexible and efficient. An additional benefit is that the language is highly consistent across different systems.

The C library contains functions for input and output, mathematics, exception handling, string and character manipulation, dynamic memory management, as well as date and time manipulation. Use of this library helps to maintain program portability, because the underlying implementation details for the various operations need not concern the programmer.

Overview of the C++ Language
Constructs Treated Differently in C and C++
C and C++ Compatibility