Bonsoir , j'ai écrit un programme qui m'affiche la longueur de chaque ligne rencontrée en entrée , pour ce ci j'ai 2 fichiers , une fonction lireligne qui affiche la longueur d'une ligne , et un programme main pour l'éxécuter , voici les codes :
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 /* fonction */ #include <stdio.h> int lireligne(char s[], int lim) { int c, i; for ( i=0; i < lim - 1 && (c=getchar()) != EOF && c!='\n'; ++i) s[i] = c; if ( c == '\n' ) { s[i] = c; ++i; } s[i] = '\0'; return i; }message d'erreur pour la compilation :
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 int lireligne(char ligne[], int taille); int main(void) { int l = 0; int c; while ((c=getchar() !=EOF && lireligne > 0 ) { if ( c == '\n' ) ++l; else l = 0; } printf("%d\n", l); }
Est ce que par hasard çà serait parce que j'ai oublié le return 0 ?main.c : warning ordered comparaison of pointer with integer zero , control reaches end of non void function .
merci
Partager