cs_LordBob
Messages postés2865Date d'inscriptionsamedi 2 novembre 2002StatutMembreDernière intervention11 mai 2009
-
24 nov. 2003 à 09:04
cs_LordBob
Messages postés2865Date d'inscriptionsamedi 2 novembre 2002StatutMembreDernière intervention11 mai 2009
-
24 nov. 2003 à 12:03
Bonjours a tous,
pourquoi quand j'écris le code ci-dessous:
#include <stdio.h>
int main()
{
int i;
char tab[6] = "bonjour";
for (i=0;i==6;i++)
{
printf("%c", tab[i]);
}
return 0;
}
j'obtiens une erreur a la compilation, je ne comprend pas... pourriez-vous m'aider svp? (je suis sur que c'est un truc tout bete, mais je ne sais pas quoi)
Merci par avance...
Bob...
"La chance accorde ses faveur aux esprits avertis..."
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 24 nov. 2003 à 09:32
char tab[6] = "bonjour";
et que dit le message d'erreur pour cette ligne ?
Quand tu ecris char tab[6], c'est cense faire quoi d'apres toi ?
BruNews, ciao...
cs_LordBob
Messages postés2865Date d'inscriptionsamedi 2 novembre 2002StatutMembreDernière intervention11 mai 20099 24 nov. 2003 à 10:34
je vois pas pourquoi je devrais conter les lettre vu que le mot 'bonjour' contient 7 lettre et le tableau contient 7 'colone':
tab[0] = 'b'
tab[1] = 'o'
tab[2] = 'n'
tab[3] = 'j'
tab[4] = 'o'
tab[5] = 'u'
tab[6] = 'r'
le programme sert juste a afficher les caracteres contenus dans un tableau... et le compilateur me signale le message d'erreur suivant:
error C2117: 'bonjour' : array bounds overflow
Bob...
"La chance accorde ses faveur aux esprits avertis..."
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_LordBob
Messages postés2865Date d'inscriptionsamedi 2 novembre 2002StatutMembreDernière intervention11 mai 20099 24 nov. 2003 à 11:03
voici donc le programme final:
#include <stdio.h>
int main()
{
int i;
char tab[10] = "bonjour";
for (i=0;i==6;i++)
{
printf("%c", tab[i]);
}
return 0;
}
certe maintenant je n'ai plus de probleme de compilation et je te remercie pour ton aide, mais le programme n'affiche rien non plus a l'écran pas un seul caractere...
Bob...
"La chance accorde ses faveur aux esprits avertis..."
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 24 nov. 2003 à 11:57
Regarde ce que sont les 3 parties declaratives du 'for'.
TOUTES OPTIONNELLES, for(;;) est legal.
for(A;B;C):
A) initialisation de ce que tu veux.
B) condition a faire TANT QUE, donc si i==6 ne part pas.
C) increm, decrem de compteur ou delires persos.
BruNews, ciao...