Ah en effet je vois. Mais ton problème vient tout de même de ce que je pensais.
En fait, quand tu fais enter après avoir entré le nom d'utilisateur, le fameux \n reste en mémoire (dans le tampon, l'endroit où est temporairement gardé en mémoire ce que tu entres au clavier par exemple).
A la prochaine utilisation, getline rencontre \n dans le tampon, et le stock dans la variable nom_utilisateur. Voilà pourquoi.
Tu verras probablement plus loin dans le cours un moyen d'écrire une fonction de saisie sécurisée.
Concrètement, il faut vider le tampon du fameux "\n"