Suite à l'extraordinaire succès d' UNIX, qui induisit le succès du langage C, la situation devint confuse : plusieurs fournisseurs de compilateurs mirent sur le marché des compilateurs non conformes à K&R car comportant des extensions particulières. À la fin des années 80, il devint nécessaire de mettre de l'ordre dans ce chaos et donc de normaliser le langage, tâche à laquelle s'attela l' ANSI1.1, organisme de normalisation américain. La norme ANSI fut terminée en 1989. En 1990, l' ISO1.2, organisme de normalisation international, (donc chapeautant l' ANSI), adopta tel quel le standard ANSI en tant que standard ISO.
Cette seconde version du langage C devrait donc s'appeler ISO C, mais comme les acteurs importants du monde informatique sont de culture anglo-saxonne et que ceux-ci persistent à l'appeler ANSI C, (presque ?) tout le monde fait de même. Dans ce manuel, nous suivrons l'usage général, et utiliserons l'expression ANSI C pour désigner la norme commune à l' ANSI et l' ISO.
Ce document décrit C ANSI, avec parfois des références à C K&R, de manière à permettre au lecteur de comprendre les sources écrits avant l'apparition de la norme.