7. C language

This chapter details the C language implementation, supporting the ISO/IEC 9899:1999 standard (C99).

7.1. Overview

For those accustomed to older C versions, C99 introduces several useful features:

  • Declarations and statements can be mixed in the same block scope

  • A declaration can be placed in the initialization expression of a for loop

  • The bool datatype, available as _Bool or as bool after the stdbool.h header file has been included

  • The long long data type

  • C++ style comments

  • Use of incomplete array at end of a structure

  • Variable length arrays

  • Initialization of compound objects by the use of designated initializers improve readability

7.2. Extensions

Language extensions are always enabled, encompassing various qualifier keywords, intrinsic functions, and additional library features.