Source: https://www.academia.edu/6616956/Le_langage_C_ISO_9899_C90_et_C99.pdf