Est il possible de convertir une variable de type string en varaibale de type char ?
Merci de votre aide
Est il possible de convertir une variable de type string en varaibale de type char ?
Merci de votre aide
Une variable de type "string" ?...
Ca n'existe pas vraiment ça
Un "string" c'est juste un tableau de char qui se termine par '\0'
Donc si tu veux convertir "a" en 'a' par exemple c'est pas dur : tu regardes la première lettre de ton string "a" (je vais pas te faire l'offense de poster la syntaxe exacte )
C marrant j'ai encore rien compris
Pour moi un char est une chaine se terminant par /0.
Un string est une structure avec un tableau de char caractérisé par un premier élément (char) et une longueur.
Mais existe il une fonction qui transforme un string en char directement, ou bien faut il faire une boucle qui lie le string et qui pour chaque élément le concatène dans un char ?
Le type string n'est pas défini par défaut en C (c'est du C++).
S'il s'agit d'un type utilisateur, difficile de répondre à la question sans connaitre sa déclaration...
"La forme même des Pyramides prouve que de tous temps, les ouvriers n'ont jamais pensé qu'à en faire de moins en moins."
G. CLEMENCEAU
Petite piqure de rappel : Les chaînes de caractères en CEnvoyé par CoachMac
Merci pour ce rappel, et donc existe t'il un moyen de transformer un string en char ?
Ou la question est stupide ?
Ca dépend de ce que tu entends par stringEnvoyé par CoachMac
"La forme même des Pyramides prouve que de tous temps, les ouvriers n'ont jamais pensé qu'à en faire de moins en moins."
G. CLEMENCEAU
Hello,
Le vaccin est mal passé ?Envoyé par CoachMac
A+
Tu ne peux pas.Une string (tableau de caractère terminé par \O) ne rentrera jamais dans un char.Envoyé par CoachMac
Un char = 1 octet
une string = Autant d'octet que de caractère dans le tableau.
Ca ne peut pas rentrer...
Qu'est-ce que tu cherches a faire exactement explique ton probléme.
" Dis ce que tu veux qui insulte mon honneur car mon silence sera la réponse au mesquin.
Je ne manque pas de réponse mais : il ne convient pas aux lions de répondre aux chiens ! " [Ash-Shafi'i ]
Hello,
Envoyé par hegrosNon, un byte (multiplet en français), qui souvent il est vrai vaut un octet.Envoyé par hegros
Je dirais plutôt : il s'agit en mémoire d'une suite contigüe de caractères terminée par un caractère particulier, le caractère 'terminateur de chaine' ('\0' => caractère nul, baqueslache-zéroi, zéro tout court, etc...).Envoyé par hegros
Mais bon, il n'y a pas de type chaine de caractères en C, donc peut-on vraiment en parler ?
A+
1 byte = 8 bit = 1 octet. C'est ce que j'ai toujours comprisEnvoyé par Foobar1329
Pas en C : http://emmanuel-delahaye.developpez.com/init_c.htm#byteEnvoyé par _kal_
Ça alors ! J'aurai jamais penséEnvoyé par gege2061
Ceci depend-il de l'implémentation ?
Uniquement de la machine, rien n'empêche un constructeur de faire un byte avec 10 bits.
"La haine seule fait des choix" - Koan Zen
"Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
"Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
Faites du Prolog, ça vous changera les idées !
Ma page Prolog
Mes codes sources commentés
Mon avatar : La Madeleine à la veilleuse de Georges de La Tour
Mais en realite un char est un type entier couvrant une plage minimale garantie de -127 a 127 ou de 0 a 255 selon l'implementation. Il y donc une grave confusion dans ton esprit.Envoyé par CoachMac
Rien de tel en c natif. Par contre, 'string' designe un tableau de char initialise par des valeurs representant des caracteres et terminee par un 0.Un string est une structure avec un tableau de char caractérisé par un premier élément (char) et une longueur.
Il est urgent que tu revoies le vocabulaire du langage C, sinon on ne va pas se comprendre.
Reformule ca avec le vocabulaire correct, parce que je ne comprend ni la phrase ni tes intentions.Mais existe il une fonction qui transforme un string en char directement, ou bien faut il faire une boucle qui lie le string et qui pour chaque élément le concatène dans un char ?
Pas de Wi-Fi à la maison : CPL
C'est une vision reductrice et simplificatrice du monde...Envoyé par _kal_
En C, le plus petit element adressable est le byte. Il doit faire au moins 8 bits. Un char a exactement la taille d'un bye.
Un octet est un element d'information d'exactememt 8 bits de longueur. Ce terme appartient plutot au monde des telecoms ou pour specifier des fichiers ou toutes donnees organisees en blocs de 8 bits. On ne l'utilise pas en C.
Pas de Wi-Fi à la maison : CPL
Donc, on pourrait résumer par "1 char = 1 byte >= 8 bits = 1 octet" ?
(en C uniquement, bien entendu).
PS:Envoyé par Emmanuel Delahaye
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Il est clair que j'ai besoin de révision. Je n'ai plus pratiqué le C depuis trop longtemps.
Dans tous les cas j'ai trouvé avec votre aide et les différents liens la solution à mon problème et je vous remercie beaucoup.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager