[C] Enregistrer dans un fichier

bonjour,
dans ce petit code en C je voudrais ecrire dans mon fichier en txt la lettre que je veux (à l'aide d'un scanf ...) mais je ne sais pas comment organiser le tout ...

int register(long nombre)
{
FILE* fichier = NULL;
fichier = fopen("test.txt", "a");

if (fichier != NULL)
{
long nombre = 0;
printf("Entrez un nombre... ");
scanf("%ld", &nombre);

fputc('A', fichier); /* ici ecriture du caractere A que je souhaiterai remplacer par la lettre que je souhaite ... ??? ???*/

fclose(fichier);
}

else
{
printf("error");
}

return 0;
}

merci pour votre aide
Configuration: Windows Vista
Internet Explorer 7.0

7 réponses

  1. ok merci bcp
    2
    1. pour lire un caractère:
      char c;
      scanf("%c", &c);

      pour l'écrire dans le fichier:
      fprintf(fichier, "%c", c);
      2
      1. je ne comprends pas très bien : est-ce que les 2 codes suivants reviennent à la même chose ??

        - soit j'enregistre le caractère qui est dans ma variable "nombre"

        scanf("%ld", &nombre);
        printf("Ah ! Vous avez donc choisi la touche %ld", nombre);
        fputc('A', fichier); /* mais je remplace mon caractère A par le caractère saisi dans la fonction scanf */

        - soit j'utilise le code suivant

        fprintf(fichier, "%c", nombre);

        ???????? ^^

        merci pour vos reponses
        2
        1. fputc(char, fichier);

          man fputc pour les détails
          2
          1. scanf("%ld", &nombre); lit un nombre entier long
            scanf("%s", string); lit une chaine de caractères
            scanf("%c", &char); lit un caractère

            %ld pour lire une touche, je ne comprends pas
            1
            1. d'accord mais ou inserer ma variable recupereée par scanf dans ma fonction

              fputc('A', fichier);
              1

              Discussions similaires

              question pix mot caché

              7 réponses