C 03 is a version of the ISO/IEC 14882 standard for the C programming language. It is defined by two standards organizations, the International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC), in standard ISO/IEC 14882:2003.

C 03 replaced the prior C 98 standard. C 03 was later replaced by C 11. C 03 was primarily a bug fix release for the implementers to ensure greater consistency and portability.[1] This revision addressed 92 core language defect reports,[2] 125 library defect reports,[3] and included only one new language feature: value initialization.[4]

Among the more noteworthy defect reports addressed by C 03 was the library defect report 69,[5] whose resolution added the requirement that elements in a vector are stored contiguously.[6] This codifies the common expectation that a C std::vector object uses a memory layout similar to an array. While most implementations satisfied this expectation, it was not required by C 98.

See also

edit

References

edit
  1. ^ "Bjarne Stroustrup's FAQ – What is the difference between C 98 and C 03?". Bjarne Stroustrup's homepage. Archived from the original on February 6, 2016.
  2. ^ "C Standard Core Language Issue Index by Status: Issues with "TC1" Status". open-std.org. Archived from the original on 2022-09-11. Retrieved 2022-09-20.
  3. ^ "C Standard Library Issues List: TC1 (125 issues)". Archived from the original on 2018-07-21. Retrieved 2016-05-30.
  4. ^ "Value initialization", C reference (wiki), archived from the original on 2018-05-27, retrieved 2016-05-30
  5. ^ "C Standard Library Defect Report List: 69. Must elements of a vector be contiguous?". Archived from the original on 2018-07-19. Retrieved 2016-05-30.
  6. ^ Herb, Sutter (2002). More Exceptional C : 40 New Engineering Puzzles, Programming Problems, and Solutions. Boston: Pearson Education, Inc. p. 48. ISBN 0-201-70434-X. Archived from the original on 2022-09-21. Retrieved 2022-09-20.
  • British Standards Institute (2003-10-01). The C Standard: Incorporating Technical Corrigendum No. 1. John Wiley & Sons, Inc. ISBN 978-0-470-84674-2.