Variable tableau dans une structure
annefrank
-
BreTzeL Messages postés 59 Statut Membre -
BreTzeL Messages postés 59 Statut Membre -
voici un programme:
#include <stdio.h>
main(void)
{
struct repertoire{
char tableau[5];
};
struct repertoire jean;
jean.tableau[5]= "lui";
printf ( "%s\n",jean.tableau);
printf("%c\n",jean.tableau[0]);
}
je veux que le programme affiche "lui" mais n'apparait que des caractères bizarroides quelque soit la méthode (dernière ligne ou avant-dernière ligne). où est mon erreur.
merci pour la réponse.
#include <stdio.h>
main(void)
{
struct repertoire{
char tableau[5];
};
struct repertoire jean;
jean.tableau[5]= "lui";
printf ( "%s\n",jean.tableau);
printf("%c\n",jean.tableau[0]);
}
je veux que le programme affiche "lui" mais n'apparait que des caractères bizarroides quelque soit la méthode (dernière ligne ou avant-dernière ligne). où est mon erreur.
merci pour la réponse.
A voir également:
- Variable tableau dans une structure
- Tableau word - Guide
- Trier un tableau excel - Guide
- Imprimer tableau excel sur une page - Guide
- Code ascii tableau - Guide
- Fiche pratique tableau croisé dynamique - Guide
7 réponses
Hé ben ouais tu peux po faire
faut faire
tableau[5]="lui";ça voudrait dire que tu veux écrire lui ds la 5ème case du tableau. Il
faut faire
jean.tableau="lui";ou faire un
sizeof de "lui"g plus la synthaxe exacte pour que le programme définisse la taille de "lui", kil range ds un int je crois ensuite tu entre t valeurs ds ton tableau case par case avec une boucle... (une chaîne de caractère en C c aussi un tableau).
Bonjour
Il faut que tu rentres dans le tableau les caractères un par un:
Le dernier, c'est le caractère de fin de chaine!! Surtout ne jamais l'oublier....
Maily :-))))
Il faut que tu rentres dans le tableau les caractères un par un:
jean.tableau[0]= 'l';
jean.tableau[1]= 'u';
jean.tableau[2]= 'i';
jean.tableau[3]= '\0';
Le dernier, c'est le caractère de fin de chaine!! Surtout ne jamais l'oublier....
Maily :-))))
tu peus le faire directement de la maniere tableau[5]={"lui"}
mais t'es limité à 5 carac
utilise plutot les pointeurs
char *tableau;
et tu initialises, tu fais tableau=malloc(la_taille_de_ta_chaine)
ex tableau=malloc(5)
tu peux ainsi avoir dans un tab plusieur chaine de caractere
char *tableau[5]
tu as donc:
tableau[0]=malloc(4)
tableau[0]="lui"
tableau[1]=malloc(10)
tableau[1]="il etait ..."
etc ...
puis ton appelle de struct
jean.tableau[1] ..... 2 3 4 etc ...
A@++
Puissance C
mais t'es limité à 5 carac
utilise plutot les pointeurs
char *tableau;
et tu initialises, tu fais tableau=malloc(la_taille_de_ta_chaine)
ex tableau=malloc(5)
tu peux ainsi avoir dans un tab plusieur chaine de caractere
char *tableau[5]
tu as donc:
tableau[0]=malloc(4)
tableau[0]="lui"
tableau[1]=malloc(10)
tableau[1]="il etait ..."
etc ...
puis ton appelle de struct
jean.tableau[1] ..... 2 3 4 etc ...
A@++
Puissance C
je suis désolé nico mais çà ne marche pas que je fasse
tableau[5]={"lui"} ou ="lui". dans le premier cas, il y a une erreur à la compilation (erreur de syntaxe) et dans le deuxième cas, j'ai des caractères bizarres qui s'affichent.
tableau[5]={"lui"} ou ="lui". dans le premier cas, il y a une erreur à la compilation (erreur de syntaxe) et dans le deuxième cas, j'ai des caractères bizarres qui s'affichent.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question