Source: https://www.fresnel.fr/perso/stout/langage_C/Chap_12_La_classe_string.pdf