PDA

Voir la version complète : Experts en C ???


Schnick
25/09/2007, 14h09
J'ai besoin d'aide pour un bête problème...
Je n'arrive pas à compiler mon code ...

Voici les messages et vous trouverez le code en dessous, j'ai cherché un peu sur le net mais pas moyen de trouver... :loose:

exe7.c:6: error: parameter "lettre2" has just a forward declaration
exe7.c: In function `main':
exe7.c:17: warning: passing arg 1 of `compte' makes pointer from integer without
a cast
exe7.c:17: error: too many arguments to function `compte'
exe7.c:24: error: parameter "lettre2" has just a forward declaration
exe7.c:36:2: warning: no newline at end of file
exe7.c:36: error: parse error at end of input

#include <stdio.h>
char TabCompteur[26];
// Déclaration de la fonction de comptage de lettre
int compte(char lettre2; char TabCompteur[]);
int main(){
int j, NonReconnu = 0;
char texte[100];
char lettre;

scanf("%s",texte);
printf("%s",texte);

for (j = 0; lettre=texte[j] != EOF ; j++){
if (compte(lettre,TabCompteur)==1){
printf("J'ai trouvé un caractère non reconnu !\n");
NonReconnu++;
}
}
exit(0);

int compte(char lettre2; char TabCompteur[]){
int i = 0;

for (i = 0; i < 26; i++){
if (lettre2 = 65 + i || 97 + i){
++TabCompteur[i];
return(0);
}
else {
return(1);
}
}
}

Franckix
25/09/2007, 16h30
P'tet en mettant :
int compte(char lettre2, char TabCompteur[]); (avec une virgule a la place du point virgule entre les 2 arguments)

:hello:

Lafrite
25/09/2007, 16h34
Pas mieux que franckix, point virgule c'est pour les fins d'instructions pas pour les déclarations de paramètres (sauf exception genre struct &co).


Mais bon j'ia plus fait de c depuis 6-7 ans :goutte:

Schnick
25/09/2007, 16h48
Que je suis con :honte:


Merci :)

Lafrite
25/09/2007, 17h07
Que je suis con :honte:



Pfff, t'inquiète c'est pas fini, ces compilateurs mettent la modestie de leur utilisateur à rude épreuve :siffle2:

Imprime et fais plastifier http://www.digilife.be/quickreferences/QRC/C%20Reference%20Card%20(ANSI)%202.2.pdf

En différent format pour en avoir toujours un à portée, ce genre d'aide est très utile. :o:

Chazam
25/09/2007, 17h21
P'tet en mettant :
int compte(char lettre2, char TabCompteur[]); (avec une virgule a la place du point virgule entre les 2 arguments)

:hello:

Ouahouuuuuuuuu, le retour de Franckix! :shocked:

(bon, c'est pas vraiment un retour, je te vois bien régulièrement en train de zieuter les beaux posts dans ton coin... :mrgreen: )

Franckix
26/09/2007, 11h06
Que je suis con :honte:




Euh... moi je dirais plutôt que c'est le compilateur qui est con.
Même pas capable de sortir un message d'erreur correct, genre un p'tit "missing ) before ;" et tout de suite tout serait plus clair, la résolution du problème plus aisée, la programmation plus attirante, plus chatoyante, le ciel plus bleu, le monde plus sûr et les Irish coffee avec plus de whisky (ben oui hein, parceque des fois, quand même....).

Et je ne dis pas ça parceque je suis moi aussi entrain de me débattre avec une erreur de compilateur de $*%$@# !! :enerve: :loose:



@Chazam : :hello:
la qualié des posts Franconautesques est telle que je ne peux que les lire, les apprécier, m'incliner et me taire de satisfaction béate !

sauf des fois.... (faudrait pas trop flatter vos égos quand même ! :chicos:)

Chazam
26/09/2007, 11h10
@Chazam : :hello:
la qualié des posts Franconautesques est telle que je ne peux que les lire, les apprécier, m'incliner et me taire de satisfaction béate !

sauf des fois.... (faudrait pas trop flatter vos égos quand même ! :chicos:)

:lol: Ouais, "sauf des fois...." :lol: ... Mais pour ma part, une pathologie secrète me pousse à poster, encore et toujours... :honte: