C17 (C standard revision)

Last updated

C17, formally ISO/IEC 9899:2018, [1] is an open standard for the C programming language, prepared in 2017 and published 5-Jul-2018. [1] It replaced C11 (standard ISO/IEC 9899:2011), [2] and is superseded by C23 (ISO/IEC 9899:2024) since October 2024. [3] Since it was under development in 2017, and officially published in 2018, C17 is sometimes referred to as C18. [4]

Contents

Changes from C11

C17 fixes numerous minor 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. Examples of changes include fixes for #elif, realloc, and typos, among others. [5]

Compiler support

List of compilers supporting C17:

See also

References

  1. 1 2 "ISO/IEC 9899:2018 - Information technology -- Programming languages -- C". International Organization for Standardization. Archived from the original on 1 April 2025. Retrieved 16 April 2025.
  2. 1 2 "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.{{cite web}}: CS1 maint: numeric names: authors list (link)
  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.
  10. "Changelog - Added support for new C17 standard". www.smorgasbordet.com/pellesc/.

Further reading

Preceded by
C11
C language standards Succeeded by
C23