C17 (C Standard Revision) - Wikipedia

C programming language standard, 2017 revision Not to be confused with C++17.
C language revisions
  • K&R C
  • ANSI C
  • C99
  • C11
  • C17
  • C23
  • v
  • t
  • e

C17, formally ISO/IEC 9899:2018,[1] is an open standard for the C programming language, prepared in 2017 and published in July 2018. 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]

Changes from C11

[edit]

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.[5]

Compiler support

[edit]

List of compilers supporting C17:

  • GCC 8.1.0[6]
  • LLVM Clang 7.0.0[7]
  • IAR EWARM v8.40.1[8]
  • Microsoft Visual C++ VS 2019 (16.8)[9]
  • Pelles C 9.00[10]

See also

[edit]
  • iconComputer programming portal
  • C++23, C++20, C++17, C++14, C++11, C++03, C++98, versions of the C++ programming language standard
  • Compatibility of C and C++

References

[edit]
  1. ^ "ISO/IEC 9899:2018 - Information technology -- Programming languages -- C". International Organization for Standardization.
  2. ^ a b "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

[edit]
  • N2176 (final draft of C17 standard); WG14; 2017.
  • ISO/IEC 9899:2018 (official C17 standard); ISO; 2018.
[edit]
  • C Language Working Group 14 (WG14) Documents
Preceded byC11 C language standards Succeeded byC23
  • v
  • t
  • e
C programming language
  • ANSI C
  • C99
  • C11
  • C17
  • C23
  • Embedded C
  • MISRA C
Features
  • Functions
  • Header files
  • Operators
  • String
  • Syntax
  • Preprocessor
  • Data types
Standard library
  • Char
  • File I/O
  • Math
  • Dynamic memory
  • String
  • Time
  • Variadic
  • POSIX
Implementations
  • Bionic
    • libhybris
  • dietlibc
  • glibc
    • EGLIBC
  • klibc
  • Windows CRT
  • musl
  • Newlib
  • uClibc
Compilers
  • ACK
  • Borland Turbo C
  • Clang
  • GCC
  • ICC
  • LCC
  • Norcroft C
  • PCC
  • SDCC
  • TCC
  • Visual Studio, Express, C++
  • Watcom C/C++
IDEs
  • Anjuta
  • CLion
  • Code::Blocks
  • CodeLite
  • Eclipse
  • Geany
  • GNOME Builder
  • KDevelop
  • Visual Studio
  • NetBeans
Comparison withother languages
  • Compatibility of C and C++
  • Comparison with Pascal
Descendantlanguages
  • C++
  • C#
  • D
  • Objective-C
  • Alef
  • Limbo
  • Go
  • Vala
Designer
  • Dennis Ritchie
  • Category
  • v
  • t
  • e
ISO standards by standard number
List of ISO standards – ISO romanizations – IEC standards
1–9999
  • 1
  • 2
  • 3
  • 4
  • 6
  • 7
  • 9
  • 16
  • 17
  • 31
    • -0
    • -1
    • -3
    • -4
    • -5
    • -6
    • -7
    • -8
    • -9
    • -10
    • -11
    • -12
    • -13
  • 68-1
  • 128
  • 216
  • 217
  • 226
  • 228
  • 233
  • 259
  • 261
  • 262
  • 302
  • 306
  • 361
  • 500
  • 518
  • 519
  • 639
    • -1
    • -2
    • -3
    • -5
    • -6
  • 646
  • 657
  • 668
  • 690
  • 704
  • 732
  • 764
  • 838
  • 843
  • 860
  • 898
  • 965
  • 999
  • 1000
  • 1004
  • 1007
  • 1073-1
  • 1073-2
  • 1155
  • 1413
  • 1538
  • 1629
  • 1745
  • 1989
  • 2014
  • 2015
  • 2022
  • 2033
  • 2047
  • 2108
  • 2145
  • 2146
  • 2240
  • 2281
  • 2533
  • 2709
  • 2711
  • 2720
  • 2788
  • 2848
  • 2852
  • 2921
  • 3029
  • 3103
  • 3166
    • -1
    • -2
    • -3
  • 3297
  • 3307
  • 3601
  • 3602
  • 3864
  • 3901
  • 3950
  • 3977
  • 4031
  • 4157
  • 4165
  • 4217
  • 4909
  • 5218
  • 5426
  • 5427
  • 5428
  • 5725
  • 5775
  • 5776
  • 5800
  • 5807
  • 5964
  • 6166
  • 6344
  • 6346
  • 6373
  • 6385
  • 6425
  • 6429
  • 6438
  • 6523
  • 6709
  • 6943
  • 7001
  • 7002
  • 7010
  • 7027
  • 7064
  • 7098
  • 7185
  • 7200
  • 7498
    • -1
  • 7637
  • 7736
  • 7810
  • 7811
  • 7812
  • 7813
  • 7816
  • 7942
  • 8000
  • 8093
  • 8178
  • 8217
  • 8373
  • 8501-1
  • 8571
  • 8583
  • 8601
  • 8613
  • 8632
  • 8651
  • 8652
  • 8691
  • 8805/8806
  • 8807
  • 8820-5
  • 8859
    • -1
    • -2
    • -3
    • -4
    • -5
    • -6
    • -7
    • -8
    • -8-I
    • -9
    • -10
    • -11
    • -12
    • -13
    • -14
    • -15
    • -16
  • 8879
  • 9000/9001
  • 9036
  • 9075
  • 9126
  • 9141
  • 9227
  • 9241
  • 9293
  • 9314
  • 9362
  • 9407
  • 9496
  • 9506
  • 9529
  • 9564
  • 9592/9593
  • 9594
  • 9660
  • 9797-1
  • 9897
  • 9899
  • 9945
  • 9984
  • 9985
  • 9995
10000–19999
  • 10006
  • 10007
  • 10116
  • 10118-3
  • 10160
  • 10161
  • 10165
  • 10179
  • 10206
  • 10218
  • 10279
  • 10303
    • -11
    • -21
    • -22
    • -28
    • -238
  • 10383
  • 10585
  • 10589
  • 10628
  • 10646
  • 10664
  • 10746
  • 10861
  • 10957
  • 10962
  • 10967
  • 11073
  • 11170
  • 11172
  • 11179
  • 11404
  • 11544
  • 11783
  • 11784
  • 11785
  • 11801
  • 11889
  • 11898
  • 11940 (-2)
  • 11941
  • 11941 (TR)
  • 11992
  • 12006
  • 12052
  • 12182
  • 12207
  • 12234-2
  • 12620
  • 13211
    • -1
    • -2
  • 13216
  • 13250
  • 13399
  • 13406-2
  • 13450
  • 13485
  • 13490
  • 13567
  • 13568
  • 13584
  • 13616
  • 13816
  • 13818
  • 14000
  • 14031
  • 14224
  • 14289
  • 14396
  • 14443
  • 14496
    • -2
    • -3
    • -6
    • -10
    • -11
    • -12
    • -14
    • -17
    • -20
  • 14617
  • 14644
  • 14649
  • 14651
  • 14698
  • 14764
  • 14882
  • 14971
  • 15022
  • 15189
  • 15288
  • 15291
  • 15398
  • 15408
  • 15444
    • -3
    • -9
  • 15445
  • 15438
  • 15504
  • 15511
  • 15686
  • 15693
  • 15706
    • -2
  • 15707
  • 15897
  • 15919
  • 15924
  • 15926
  • 15926 WIP
  • 15930
  • 15938
  • 16023
  • 16262
  • 16355-1
  • 16485
  • 16612-2
  • 16750
  • 16949 (TS)
  • 17024
  • 17025
  • 17100
  • 17203
  • 17369
  • 17442
  • 17506
  • 17799
  • 18004
  • 18014
  • 18181
  • 18245
  • 18629
  • 18916
  • 19005
  • 19011
  • 19092
    • -1
    • -2
  • 19114
  • 19115
  • 19125
  • 19136
  • 19407
  • 19439
  • 19500
  • 19501
  • 19502
  • 19503
  • 19505
  • 19506
  • 19507
  • 19508
  • 19509
  • 19510
  • 19600
  • 19752
  • 19757
  • 19770
  • 19775-1
  • 19794-5
  • 19831
20000–29999
  • 20000
  • 20022
  • 20121
  • 20400
  • 20802
  • 20830
  • 21000
  • 21001
  • 21047
  • 21122
  • 21500
  • 21827
  • 22000
  • 22275
  • 22300
  • 22301
  • 22395
  • 22537
  • 23000
  • 23003
  • 23008
  • 23009
  • 23090-3
  • 23092
  • 23094-1
  • 23094-2
  • 23270
  • 23271
  • 23360
  • 23941
  • 24517
  • 24613
  • 24617
  • 24707
  • 24728
  • 25178
  • 25964
  • 26000
  • 26262
  • 26300
  • 26324
  • 27000 series
  • 27000
  • 27001
  • 27002
  • 27005
  • 27006
  • 27729
  • 28000
  • 29110
  • 29148
  • 29199-2
  • 29500
30000+
  • 30170
  • 31000
  • 32000
  • 37001
  • 38500
  • 39075
  • 40500
  • 42010
  • 45001
  • 50001
  • 55000
  • 56000
  • 80000
  • Category

Từ khóa » C99 Vs C11 Vs C 17