Bonjour,
Je débute en C et j'essai actuellement de lire et imprimer un fichier. Mon code est le suivant :
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
40
41
42
43
44
 
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
 
void readFile(char* fileName, int result)
{
    int ok = 1;
    char readChar;
    FILE *readFile;
    readFile = fopen(fileName, "r");
 
    if(readFile == 0)
    {
        perror(fileName);
        result = 1;
    }
 
    while(ok != 0)
    {
        readChar = fgetc(readFile);
        if((feof(readFile) != 0) || (ferror(readFile) != 0))
        {
            ok = 0;
        }
        else
        {
            printf("%c", readChar);
        }
    }
    fclose(readFile);
    result = 0;
}
 
int main(int argc, char **argv )
{
    int result = 0;
	if (!(argc==2)){
		fprintf(stderr,"ERROR\n");
		return 1;
	}
    readFile(argv[1], result);
    return result;
}
le nom du fichier est lu en command line argument. Je voudrais tout d'abord savoir si ce code vous semble correct. Puis, je voudrais savoir comment m'y prendre si je veux n'imprimer que certaines lignes du fichier. Par exemple, si la ligne contient un entier, alors imprimer la ligne.
Merci d'avance,
Jo