C17 (C standard revision)

Print Print
Reading time 4:36

C17 is the informal name for ISO/IEC 9899:2018,[1] the most recent standard for the C programming language, prepared in 2017 and published in June 2018. It replaced C11 (standard ISO/IEC 9899:2011).[2] C17 will be superseded by C2x.[3]

Since it was under development in 2017, and officially published in 2018, C17 is also commonly referred to as C18. GCC, for example, treats the commands -std=c17 and -std=c18 as equivalent[4], and the C-Standard page on the ISO-9899 wiki refers to ISO/IEC 9899:2018 as C18, only noting later that the standard is sometimes called C17.[2]

Changes from C11

C17 addressed defects in C11 without introducing new language features.[2]

The __STDC_VERSION__ macro is increased to the value 201710L.

For a detailed list of changes from the previous standard, see Clarification Request Summary for C11.[5]

Compiler support

List of compilers supporting C17:

See also

  • C++98, C++03, C++11, C++14, C++17, C++20 – versions of the C++ programming language standard
  • Compatibility of C and C++


  1. ^ "ISO/IEC 9899:2018 - Information technology -- Programming languages -- C". www.iso.org.
  2. ^ a b c "The Standard - C". www.iso-9899.info.
  3. ^ "WG 14 Document log". www.open-std.org.
  4. ^ "Using the GNU Compiler Collection (GCC): C Dialect Options". gcc.gnu.org.
  5. ^ ISO/IEC JTC1/SC22/WG14 (October 2017). "Clarification Request Summary for C11 Version 1.13". www.open-std.org. Retrieved 28 September 2020.
  6. ^ "Using the GNU Compiler Collection (GCC): C Dialect Options". gcc.gnu.org.
  7. ^ "Clang 7 documentation — Clang Compiler User's Manual".
  8. ^ "IAR Information Center for Arm - Release notes". netstorage.iar.com.
  9. ^ "C11 and C17 Standard Support Arriving in MSVC". devblogs.microsoft.com. 14 September 2020.

External links

Preceded by
C language standards Succeeded by

By: Wikipedia.org
Edited: 2021-06-18 15:14:57
Source: Wikipedia.org