The correct title of this article is __STDC_VERSION__ even though for technical reasons the wiki displays it without underscores.
__STDC_VERSION__ is a macro defined by the implementation (compiler + standard library) to indicate which version of the Standard it is complying with. It was not specified in the first (C90) version of the Standard, so legally a C90 compiler could set __STDC_VERSION__ to a value greater than 199409L; the likelihood of this is debatable. (Likewise, a compiler that doesn't claim conformance to any standard is entirely free to define __STDC_VERSION__ in any way it likes, and therefore relying only on this macro for conformance information is unwise.)
| Standard | __STDC_VERSION__ |
| C89/C90 | Not defined by the Standard (should be #undefd)
|
| C94 | 199409L |
| C99 | 199901L |









