C'est le : #ifndef MY_HEADER_FILE_ qui va verifier si le my_hearder_file.h n'as pas déja etait inclus.
Admettons que tu a deux fichier: main.c et foo.c
Si dans les deux fichiers tu as besoin d'inclure le my_header_file.h, avec le ifndef ton compilo verifira si il est inclut dans plusieurs fichier pour ne pas avoir à l'inclure deux fois
Ton #ifndef MY_HEADER_FILE_H et suivit par un #define MY_HEADER_FILE_H. Ensuite tu ajoute tes déclarations, structure etc.. et à la fin tu n'oublie pas le #endif pour notifier la fin de ton ifndef.
Dans mon message precedent TOTO_H correspondais à un fichier .h que je prenais pour exemple. Et pareil pour le magic key, c'était seulement une define avec comme nom MAGIC_KEY ayant pour valeur 42.
J'espere que tu as maintenant compris 