Search code examples
cstandards

Why C language called Standard


Recently I've read "Extreme C Programming" book and often heard that

C is a Standard

I know, C is standardized by ANSI. But what does it really mean? Is this is about keywords, supported functions or headers?


Solution

  • It means that there is international standardization in the form of a document ISO/IEC 9899:2018 1) stating how compilers and applications should behave. ISO is an international collaboration, consisting of working groups that take input from national standardization institutes such as ANSI/INCITS in USA. So saying that C is standardized by ANSI is wrong unless you happen to live in USA, where the local name for the standard is INCITS/ISO/IEC 9899:2018.

    The whole language is specified in this document: terms, behavior, keywords, operators, environment considerations, certain libraries and so on.


    1) The official standard costs money to obtain. For student/hobbyist purposes, you can download a draft version of the standard for free though, such as the C11 draft.