C89 (ANSI C)

The C89 standard, also known as ANSI C, represents the first formal standardization of the C Programming Language. In 1983, the ANSI (American National Standards Institute) formed a committee, X3J11, to establish a standard definition of C to improve portability and maintainability across different systems.

The standard was officially ratified in 1989 and is frequently referred to as C89. Shortly thereafter, in 1990, the ISO adopted the same standard with minor formatting changes, resulting in C90. These two terms, C89 and C90, describe essentially the same language specification.

Prior to this standardization, the language was largely defined by the book written by Brian Kernighan and Dennis Ritchie, often called K&R C. The C89 standard introduced several key features, including function prototypes, the const and volatile qualifiers, and a formalized Standard Library.

Modern Compilers like GCC and Clang still support C89 compatibility modes, as many legacy systems and embedded applications continue to rely on this foundational standard. It was eventually succeeded by C99 and later C11.

For further reading, consult the Official ANSI Website or the Wikipedia entry on ANSI C.