Tableau de caractere en C [Fermé]

Signaler
-
tafiscobar
Messages postés
1284
Date d'inscription
jeudi 7 décembre 2000
Statut
Contributeur
Dernière intervention
26 février 2009
-
bonjour je voudrai afficher le mot marseille
sachante que marseille est une structure
typedef struct
{
double x;
double y;
char nom[20];
}ville;
ville marseille;
donc *marseille.nom="marseille";
pourquoi cela ne fonctionne lorsque que je tape
printf("%c",marseille.nom);
merci

5 réponses

Yop,

si je ne me trompe pas %c sert à afficher un caractère et pas une chaine de caractère. Essaye plutot avec un %s.

++

Nico
merci mais ca ne fonctionne pas avant cela affichait qu'un caractere maintenant ca fait des cractreres inconnus
Est-ce que ta chaine se termine par "\0"?? Parce que je crois que %s affiche tant qu'il ne trouve pas \0 qui indique la fin de la chaine de caractère.

++

Nico
Messages postés
488
Date d'inscription
vendredi 16 avril 2004
Statut
Membre
Dernière intervention
15 mars 2009
156
de toutes facons, *marseille.nom="marseille";
ca n'existe pas en c. (pas plus que*marseille.nom=="marseille"; )

cordialement
Messages postés
1284
Date d'inscription
jeudi 7 décembre 2000
Statut
Contributeur
Dernière intervention
26 février 2009
166
 strcpy (marseille.nom, "marseille"); 
 *marseille.nom ="marseille" ;  // La tu mets ds la premiére case de 
// nom, le caractere 'm' et 
// cela parce que le '.' est prioritaire par rapport au '*'. 


tafiscobar "lou waye def bopame"
la nullite n'existe pas, l'ignorance oui, ah je suppose!!!