Salut à tous j'aimerais avoir la différence et l'impact lors de l'utilisation de ces 2 types lors de la déclaration d'une chaîne de caractère.
Salut à tous j'aimerais avoir la différence et l'impact lors de l'utilisation de ces 2 types lors de la déclaration d'une chaîne de caractère.
Char * et Char (%s) ne sont pas des types du C, tu peux préciser ton problème ?
"char *" est un type du C. Par contre Char (%s), je ne comprends pas
Raymond
Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi
CafuroCafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
e-verbeUn logiciel de conjugaison des verbes de la langue française.
Ma page personnelle sur DVP.
Désolé j'ai pas fais de précisions.
Pour char(%s) je fais allusion à déclarer une variable (chaîne de caractère) avec le type char puis puis dans un scanf ou un printf utiliser le format %s.
Mon problème est de savoir lequel de ces deux types est le plus approprié pour une chaîne de caractère (utilisation de la mémoire, rapidité d'exécution).
char est le nom du type "caractère" en langage C. Pour afficher un caractère à l'aide de la fonction printf, on utilise le spécificateur de format "%c". Par exemple :
'\n' c'est le caractère qui permet de passer à la ligne suivante ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 char mon_char = 'A'; /* Un caractere. */ printf("mon_char = %c.\n", mon_char);
En fait si on veut simplement afficher un caractère, on peut également utiliser la "fonction" putchar.
char * est le nom du type pointeur sur un caractère en langage C. Une chaîne, lorsqu'elle est utilisée en dehors de sizeof, est toujours convertie par le compilateur en un pointeur vers son premier caractère. Pour afficher une chaîne (dont on connaît l'adresse de son premier caractère ...) dans printf, on utilise le spécificateur de format "%s". Par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part putchar('A');
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 char * mon_pointeur = "Bonjour."; /* mon_pointeur pointe sur le caractere 'B' de la chaine "Bonjour". */ printf("%s\n", mon_pointeur);
Partager