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