bonjour a tous!!
je commence dans la programmation en c et g un petit probleme, je voudrai convertir un char en char*
existe-il une fonction qui nous permet de faire ça ??
merci d'avance !!![]()
bonjour a tous!!
je commence dans la programmation en c et g un petit probleme, je voudrai convertir un char en char*
existe-il une fonction qui nous permet de faire ça ??
merci d'avance !!![]()
Explique plus précisemment ce que tu veux faire.
Est-ce que tu veux faire quelque chose comme cela:
?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 char c='a'; char *str=fonction_magique(c); /* ici str="a" */
Si oui, il y a deux façons.
La première est adaptée si tu ne veux pas allouer de mémoire:
Attention à ne pas prendre l'adresse de str n'importe comment !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 /* traitement */ char c=...; /* traitement */ char str[2]; str[0]=c; str[1]='\0';
La seconde façon alloue de la mémoire(et doit donc la libérer !):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 char *char2string(char c) { char *str=malloc(2*sizeof(char)); if(str==NULL) return NULL; str[0]=c; str[1]='\0'; return str; }
La question n'a pas de sens : ou c'est un char ou c'est un char* (c'est à dire, probablement, un tableau de char). Les deux concepts sont radicalement différents.je commence dans la programmation en c et g un petit probleme, je voudrai convertir un char en char*
Si on se contente de lire la question la réponse pourrait être
Pour pousser encore plus dans l'impertinence, nous pourrions dire soit une boite dans { char, long, int, ... } pour retourner un pointeur vers la boîte "il suffit" de créer un boite* pboite et de mettre l'adresse d'une boite dedans.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 char c='a'; char *pc = &c;
Vous pourrez remarquer qu'en C, un "pointeur vers" une boîte peut s'étendre à un pointeur vers un tableau de boîtes.
Lorsque la boîte est un char, nous pénétrons dans un domaine assez particulier définit par la convention : la fin d'un tableau de char est signalée par '0'.
Ceci dit, rien de tel n'est définit pour les autres "boîtes": comment est signalée la fin d'un tableau d'entiers?
Pour les débutants tout cela peut paraître "bizarre".
Mais comme nous avons la chance de pratiquer le français, un language riche en exceptions, que l'on mémorise à force de renvois aux racines latines, grecques, autres... nous sommes peut être plus tolérants face à ce type d'irrégularités.
- W
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.
Cette question n'a aucun sens.
http://emmanuel-delahaye.developpez....ge=Page5#LXXVI
Partager