Кіріспе
C бағдарламалау тілінің стандарттары – C бағдарламалау тілі стандарты.
the programming language standard
ANSI C, ISO C және Стандартты C – Америка Ұлттық Стандарттар Институты (ANSI) және Халықаралық Стандарттау Ұйымының (ISO) ISO/IEC JTC 1/SC 22/WG 14 және Халықаралық Электротехникалық Комиссиясы (IEC) жариялаған C бағдарламалау тілінің кезекті стандарттары. Тарихи тұрғыдан алғанда, бұл атаулар стандарттың бастапқы және ең жақсы қолдау көрсетілген нұсқасына (C89 немесе C90 деп белгілі) қатысты. C тілінде бағдарлама жасайтын әзірлеушілер стандарттарға сәйкес болуға ұсынылады, себебі бұл түрлі компиляторларда бағдарламаны қолдану мүмкіндігін арттырады.
Тарих және болашақ
C үшін алғашқы стандартты ANSI жариялады. Бұл құжатты ISO/IEC кейін қабылдағанмен, ISO/IEC жариялаған кейінгі өңдеулерді ANSI қабылдады, бірақ "ANSI C" термині әлі де стандартты көрсету үшін қолданылады. Кейбір бағдарламашылар ISO C терминін пайдаланса, ал басқалары стандарттау ұйымдарына қатысты бейтарап болып, Стандарт C деп атайды.
Бейресми спецификация: K&R C (C78)
1978 жылы бейресми сипаттама (Брайан Керниган мен Деннис Ричидің "C бағдарламалау тілі" кітабы).
Стандарттау С
1983 жылы Америка Ұлттық Стандарттар Институты C тілінің стандартты сипаттамасын әзірлеу үшін X3J11 комитетін құрды. 1985 жылы алғашқы стандартты жоба жарияланды, оны кейде C85 деп те атайды. 1986 жылы тағы бір стандартты жоба шығарылды, оны кейде C86 деп атайды. 1988 жылы C стандартының алдын ала нұсқасы жарияланды, оны кейде C88 деп атайды.
С89
ANSI стандарты 1989 жылы аяқталды және «Программалау тілі C» деп аталатын ANSI X3.159 1989 ретінде бекітілді. Тілдің бұл нұсқасы көбінесе «ANSI C» деп аталады. Кейіннен, оны C90 нұсқасынан ажырату үшін кейде «C89» деген белгі қолданылады, бірақ осы таңбалау жүйесі сақталды.
С90
C89 стандарты ISO/IEC ұйымымен ISO/IEC 9899:1990 ретінде, тек қана форматтау өзгерістерімен ратификацияланды, кейде оны C90 деп те атайды. Сондықтан, "C89" және "C90" терминдері негізінен бір тілді білдіреді. Бұл стандарт ANSI/INCITS және ISO/IEC екеуі де тараптан өткізді.
С17
2018 жылдан бастап "C17" – C бағдарламалау тілінің қазіргі стандарты болып табылады. C17 C11 стандартындағы кемшіліктерді жойдайды, жаңа тілдік мүмкіндіктерді қоспайды.
С23
C23 – келесі маңызды C тілі стандартының жаңа нұсқасының бейресми атауы.
Негізгі компиляторлардың қолдауы
ANSI C қазіргі таңда кеңінен қолданылатын дерлік барлық компиляторлармен қолдалады. GCC және Clang – бүгінде танымал екі ірі C компиляторы, екеуі де C11 стандартына негізделген, C17 сияқты кейінгі нұсқаулардың өзгерістерін де қамтиды. Тек стандартты C тілінде жазылған және аппараттық ерекшеліктерге тәуелді болмайтын кез келген бастапқы кодты, C стандартына сәйкес келетін кез келген платформада дұрыс компиляциялауға болады. Мұндай сақтық шаралары сақталмаса, көптеген бағдарламалар белгілі бір платформада немесе белгілі бір компиляторда ғана компиляциялануы мүмкін, мысалы, GUI кітапханалары сияқты стандартты емес кітапханаларды пайдалану немесе компилятордың немесе платформаның нақты дерек түрлерінің мөлшері мен байт реті сияқты ерекшеліктеріне сүйену салдарынан.