Utilisation des tableau
Fermé
Paretto-Taccini
-
24 juin 2012 à 14:37
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 24 juin 2012 à 20:25
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 24 juin 2012 à 20:25
A voir également:
- Utilisation des tableau
- Tableau croisé dynamique - Guide
- Notice d'utilisation - Guide
- Tableau ascii - Guide
- Tableau word - Guide
- Utilisation chromecast - Guide
2 réponses
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 020
24 juin 2012 à 15:26
24 juin 2012 à 15:26
char tab[13] est un tableau de 13 caractères, et tu l'utilises comme un tableau de 13 chaînes de caractères donc forcément ça plante.
Tu devrais regarder du côté des enum pour faire ce que tu veux.
En plus, après tu fais un test sur la valeur de mois alors qu'elle n'est pas initialisée...
Tu devrais regarder du côté des enum pour faire ce que tu veux.
En plus, après tu fais un test sur la valeur de mois alors qu'elle n'est pas initialisée...
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
24 juin 2012 à 20:25
24 juin 2012 à 20:25
Bonjour,
Déjà, tu souhaites faire du C ou du C++.
Car si c'est du C, pas de cout. Si c'est du C++, pourquoi ne pas utiliser un tableau de string.
On va dire que c'est du C.
char tab[13] ={sans, janvier, fevrier, mars, avril, mai, juin juillet, aout, septembre, octobre, novembre, decembre};
Plusieurs erreurs. char tab[13] est une chaîne de 13 caractères (incluant le '\0' final). Il faut donner une deuxième dimension. Par exemple char *tab[13]; ou encore plus simple : char *tab[]={...}
De plus, ce n'est pas janvier qu'il faut mettre mais "janvier".
if(1<=mois<=12){
Que vaut mois ? Il n'est pas initialisé. De plus tu ne peux pas utiliser le if comme ça. Il faut faire : if(mois>=1 && mois<=12) {...
Par ailleurs, tu peux faire un tableau de 12 cases seulement, et tester mois>=0 && mois < 12 (strictement). C'est une habitude à prendre.
Déjà, tu souhaites faire du C ou du C++.
Car si c'est du C, pas de cout. Si c'est du C++, pourquoi ne pas utiliser un tableau de string.
On va dire que c'est du C.
char tab[13] ={sans, janvier, fevrier, mars, avril, mai, juin juillet, aout, septembre, octobre, novembre, decembre};
Plusieurs erreurs. char tab[13] est une chaîne de 13 caractères (incluant le '\0' final). Il faut donner une deuxième dimension. Par exemple char *tab[13]; ou encore plus simple : char *tab[]={...}
De plus, ce n'est pas janvier qu'il faut mettre mais "janvier".
if(1<=mois<=12){
Que vaut mois ? Il n'est pas initialisé. De plus tu ne peux pas utiliser le if comme ça. Il faut faire : if(mois>=1 && mois<=12) {...
Par ailleurs, tu peux faire un tableau de 12 cases seulement, et tester mois>=0 && mois < 12 (strictement). C'est une habitude à prendre.