ANSI C

ANSI C je  standard jazyka C publikovaný Americkým národním standardizačním institutem ( ANSI ). Dodržování tohoto standardu pomáhá vytvářet snadno přenosné programy .

Historie

První standard pro jazyk C zveřejnil americký institut ANSI. Po nějaké době byla přijata mezinárodní organizací pro normalizaci ISO , která pokračovala ve vydávání následujících verzí normy, které začaly být institutem ANSI přijímány jako norma. Navzdory tomu je standard stále častěji označován jako ANSI C spíše než ISO C.

C89

V roce 1983 vytvořil American National Standards Institute výbor X3J11 pro vytvoření specifikace pro standard C. V roce 1989, po dlouhém a náročném procesu, byl standard dokončen a schválen jako ANSI X3.159-1989 „Programovací jazyk C“. Právě tato verze je často označována jako „ANSI C“ nebo „C89“ (pro odlišení od C99 ).

C90

V roce 1990 byla norma ANSI C (s drobnými úpravami) přijata Mezinárodní organizací pro normalizaci (ISO) jako ISO/IEC 9899:1990. Tato verze je někdy označována jako C90. Termíny C89 a C90 však v podstatě odkazují na stejný jazyk.

C99

V březnu 2000 přijala ANSI normu ISO/IEC 9899:1999 [1] . Tato norma je běžně označována jako C99. Hlavní inovace:

Pro C99 byly vydány tři opravné dokumenty:

C99 již není podporována komisemi ANSI/INCITS [2] a ISO/IEC [3] ve prospěch zachování a rozvoje C11.

C11

C11 je nový jazykový standard přijatý v roce 2011 jako ISO/IEC 9899:2011. Hlavními inovacemi jsou vylepšená podpora Unicode , zavedení nového klíčového slova _Generic, podpora multithreadingu mezi platformami ( threads.h) a podpora atomických typů v jazyce a knihovně ( stdatomic.h).

Pro C11 byl vydán jeden opravný dokument:

C17

Od roku 2021 je C17 aktuálním standardem pro jazyk C [5] .

C17 v zásadě opravuje vady nalezené v C11 bez zavádění jakýchkoli inovací [6] .

Podpora kompilátoru

ANSI C je nyní podporován téměř všemi běžnými kompilátory jazyka C. Jakýkoli program napsaný pouze pomocí standardu a neumožňující specifické hardwarové předpoklady je zaručen, že bude fungovat na jakékoli platformě s poměrně standardní implementací jazyka C.

Odkazy

Poznámky

  1. 14:00-17:00 ISO/IEC 9899:1999  (anglicky) . ISO . Staženo: 21. ledna 2019.
  2. INCITS/ISO/IEC 9899-2012 . ANSI. Získáno 23. srpna 2021. Archivováno z originálu dne 31. března 2022.
  3. ISO/IEC 9899:1999 - Programovací jazyky ​​- C . Získáno 24. června 2012. Archivováno z originálu 10. října 2016.
  4. ISO/IEC 9899:2011/Cor 1:2012 . Mezinárodní organizace pro normalizaci. Získáno 23. srpna 2021. Archivováno z originálu dne 29. března 2022.
  5. ISO/IEC 9899:2018 - Informační technologie - Programovací jazyky ​​- C . www.iso.org . Získáno 23. srpna 2021. Archivováno z originálu 10. srpna 2018.
  6. Standard-C . www.iso-9899.info _ Získáno 23. srpna 2021. Archivováno z originálu dne 25. února 2005.