Tableau de caractere en C

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

  1. Contributeur
     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!!!
    0
    1. de toutes facons, *marseille.nom="marseille";
      ca n'existe pas en c. (pas plus que*marseille.nom=="marseille"; )

      cordialement
      0
      1. 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
        0
        1. merci mais ca ne fonctionne pas avant cela affichait qu'un caractere maintenant ca fait des cractreres inconnus
          0
          1. 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
            0