ANSI C

From Wikipedia, the free encyclopedia

Remove ads

ANSI C on ANSI-standardi C-kielelle.[1]

ANSI C korvasi aiemman K&R C -version, joka syntyi Brian Kernighanin ja Dennis Ritchien toimesta ennen varsinaista standardia.[1][2] Kernighan ja Ritchie julkaisivat vuonna 1978 kirjan The C Programming Language, jossa K&R-versio kielestä oli approksimaatio standardille, mutta tarve muodolliselle standardille oli ilmeinen vuonna 1982.[2] Vuonna 1982 käytössä ollut versio ei ollut sama kuin kirjassa kuvattu ja eri kääntäjissä ei ollut mukana uusimpia muutoksia.[2] K&R ei ollut myöskään riittävän tarkka monissa kielen yksityiskohdissa.[2] Myöskään Stephen Johnsonin Portable C Compiler ei enää ollut sopiva referenssikääntäjänä.[2] Myös kielen käyttö projekteissa, joita koskivat kaupalliset ja valtion hallinon sopimukset aiheutti paineita standardin muodostamiselle.[2] Vuonna 1983 ANSI perusti X3J11-komitean stadardoimaan C-kieli.[1][2] ANSI X3.159-1989 -standardi hyväksyttiin 14. joulukuuta 1989 ja julkaistiin keväällä 1990.[1] ANSI-standardi korvattiin kansainvälisellä ISO-standardina (ISO C) nimellä ISO/IEC 9899:1990, joka oli ISO/IEC JTC 1 -ryhmän työtä.[1] Standardit erotetaan myös nimillä C89 ja C90.[1]

X/Open käyttää standardointia edeltävästä versiosta tietyissä yhteyksissä termiä X/Open C.[3]

Myöhemmin standardista on julkaistu useita päivitysversioita:

  • ISO/IEC 9899:1990/Amd 1:1995, Amendment 1 (C95)[4][5]
    • ISO/IEC 9899:1990/Cor 1:1994[6]
    • ISO/IEC 9899:1990/Cor 2:1996[7]
  • ISO/IEC 9899:1999, C99
    • ISO/IEC 9899:1999/Cor 1:2001[8]
    • ISO/IEC 9899:1999/Cor 2:2004[9]
    • ISO/IEC 9899:1999/Cor 3:2007[10]
  • ISO/IEC 9899:2011, C11
    • ISO/IEC 9899:2011/Cor 1:2012[11]
  • ISO/IEC 9899:2018, C18
  • tuleva versio on C23 (ISO/IEC CD 9899[12])
Remove ads

Muutokset aiempaan

ANSI C -versiossa on useita eroja K&R C -versioon, joita ovat esimerkiksi funktioiden prototyyppien käsittelyssä, esikääntäjän toiminnan määrittelyssä ja uudet avainsanat.[13] Yhteenveto K&R ja ANSI -versioiden eroista on lueteltu The C Programming Language -kirjan toisessa painoksessa (Second Edition, 1988).[14][15] Standardissa C-kieleen on otettu eräitä vaikutteita C++-kielestä (muun muassa const-käyttö ja prototyyppien käsittely).[15]

Remove ads

Lähteet

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads