Ctrl + D nie zatrzymuje wykonywania aplikacji w oknie poleceń

Napisałem program do szyfrowania danej wiadomości przez XOR. To działa, ale to się nie kończy. Oto kod. (Stworzyłem 3 pliki):

encrypt.h:

void encrypt(char *message);

message_hider.c:

#include <stdio.h>
#include "encrypt.h"

int main() {
  char msg[80];

  while (fgets(msg, 80, stdin)){
    encrypt(msg);
    printf("%s", msg);
  }

  return 0;
}

encrypt.c:

#include "encrypt.h"

void encrypt(char *message) {
  while (*message) {
    *message++ ^= 0x1f;
  }
}

Jak wspomniałem powyżej, działa. ale nie mogę tego powstrzymać. Gdy nacisnąłem Ctrl + D, aby go zatrzymać (w cmd), szyfruje go również. (Kod musi zostać zatrzymany po zaszyfrowaniu wiadomości). Proszę wyjaśnić mi tę sprawę.

questionAnswers(5)

yourAnswerToTheQuestion