La suppression de fuite caractère de saut de ligne à partir de fgets() entrée

Je suis en train d'essayer d'obtenir certaines données de l'utilisateur et de l'envoyer à une autre fonction dans gcc. Le code est quelque chose comme cela.

printf("Enter your Name: ");
if (!(fgets(Name, sizeof Name, stdin) != NULL)) {
    fprintf(stderr, "Error reading Name.\n");
    exit(1);
}

Cependant, je trouve qu'il a un saut de ligne \n personnage à la fin. Donc, si je entrer John il finit par l'envoi d' John\n. Comment puis-je supprimer que \n et envoyer une chaîne de caractères.

  • if (!fgets(Name, sizeof Name, stdin)) (à tout le moins, ne pas utiliser de deux négations, ! et !=)
  • Pate "de ne pas utiliser deux négations" --> hmmm, si nous creuser profondément "ne pas" et "négation" sont à la fois des négations. ;-). Peut-Être Que "L'Utilisation if (fgets(Name, sizeof Name, stdin)) {.
  • Je suis sûr que vous avez voulu dire if (fgets(Name, sizeof Name, stdin) == NULL ) {
  • True: satanés !:
InformationsquelleAutor sfactor | 2010-04-22