Bonjour,

Jusqu'à présent j'ai créé des programmes manipulant des chiffres pour en faire parfois des fonctions, maintenant j'en viens à créer des programmes manipulant des lettres.

Dans l'exemple ci-dessous le code lit le texte contenu dans un fichier texte, comment créer une fonction à partir de ce code ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <stdio.h>   // lecture du contenu d'un fichier texte avec une extension .txt
#include <stdlib.h>  // ok linux et windows
#include <time.h>    //
#include <string.h>  //
 
int main()
{
    FILE *ptr_ouverture_fichier;
    char fichier_a_ouvrir[30];
    char texte;
 
    printf("\n Liste des fichiers .txt : \n");
 
    system ("dir *.txt"); // affiche les fichiers .txt se trouvant dans le dossier courant
 
    printf("\n Entre le nom du fichier que tu souhaites ouvrir : ");
    scanf("%s", fichier_a_ouvrir);
 
    ptr_ouverture_fichier = fopen (fichier_a_ouvrir, "r");
 
    if (ptr_ouverture_fichier == NULL)
    {
        printf(" Erreur lors de l'ouverture du fichier ! ");
        return EXIT_FAILURE;
    }
 
    printf("\n Le contenu du fichier %s est : \n", fichier_a_ouvrir);
    texte = fgetc(ptr_ouverture_fichier);
 
    while (texte != EOF)
        {
            printf ("%c", texte);
            texte = fgetc(ptr_ouverture_fichier);
        }
 
    fclose(ptr_ouverture_fichier);
 
    return EXIT_SUCCESS;
}
La première question que je me pose est, de quel type doit être le prototype de cette fonction ?

Est-ce que le seul paramètre du prototype est bien le nom du fichier à ouvrir ? char fichier_a_ouvrir[30];

Est-ce que la fonction renvoie une valeur? Je pense que non, la fonction ouvrira un fichier dont elle lira le contenu.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
type? ouvrir_fichier_texte(char fichier_a_ouvrir[30]);
Merci à vous pour vos lumières.