Débutant en C
Résolu/Fermé
Nico
-
28 janv. 2005 à 18:46
Ravachol Messages postés 566 Date d'inscription vendredi 5 mars 2004 Statut Membre Dernière intervention 30 octobre 2005 - 31 janv. 2005 à 18:06
Ravachol Messages postés 566 Date d'inscription vendredi 5 mars 2004 Statut Membre Dernière intervention 30 octobre 2005 - 31 janv. 2005 à 18:06
5 réponses
Moi j t suggere d'initialiser le tableau "vers" au debut de la declaration a savoir
char vers{VO191};
char vers{VO191};
Utilisateur anonyme
28 janv. 2005 à 22:43
28 janv. 2005 à 22:43
Bonsoir,
Moi, j'écrirais l'instruction suivante :
char vers [5] = { 'V', '0', '1', '9', '0' };
a+
Moi, j'écrirais l'instruction suivante :
char vers [5] = { 'V', '0', '1', '9', '0' };
a+
Je pense que la meilleure maniere d'initialiser au début mais sinon tu peux toujours le remplir case par case : vers[0]='V';
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
-Moi je te conseille soit de l'initialiser au debut
char vers[6]="V0190"; //6 parce que y a un caractere nul si tu veux que ca soit une chaine de caractere
ou
char vers[]="V0190";
-ou sinon y a l'option de declarer ton tableau et de le remplir apres...
#include <string.h>
char vers[6];
strcopy(vers,"V0190");
-et voila! (y a toujours aussi la methode d'allocation dynamique... mais bon :P)
char vers[6]="V0190"; //6 parce que y a un caractere nul si tu veux que ca soit une chaine de caractere
ou
char vers[]="V0190";
-ou sinon y a l'option de declarer ton tableau et de le remplir apres...
#include <string.h>
char vers[6];
strcopy(vers,"V0190");
-et voila! (y a toujours aussi la methode d'allocation dynamique... mais bon :P)
Ravachol
Messages postés
566
Date d'inscription
vendredi 5 mars 2004
Statut
Membre
Dernière intervention
30 octobre 2005
120
>
etienne aussi, mais un autre ;-)
30 janv. 2005 à 09:01
30 janv. 2005 à 09:01
Salut,
Ben non, en C lorsque l'on écrit
Aucun problème à craindre de cette syntaxe.
A++
Ben non, en C lorsque l'on écrit
char vers[]="V0190";le compilateur va réserver le nombre exact de caractères permettant de stocker la chaine correctement délimitée, caractère /0 compris donc.
Aucun problème à craindre de cette syntaxe.
A++
Ravachol
Messages postés
566
Date d'inscription
vendredi 5 mars 2004
Statut
Membre
Dernière intervention
30 octobre 2005
120
>
Ravachol
Messages postés
566
Date d'inscription
vendredi 5 mars 2004
Statut
Membre
Dernière intervention
30 octobre 2005
30 janv. 2005 à 09:08
30 janv. 2005 à 09:08
Pouet,
caractère \0 compris donc.
caractère \0 compris donc.
Nico
>
Ravachol
Messages postés
566
Date d'inscription
vendredi 5 mars 2004
Statut
Membre
Dernière intervention
30 octobre 2005
31 janv. 2005 à 16:37
31 janv. 2005 à 16:37
Tout d'abord, merci à tous pour votre aide.
Donc pour résumer, je peux faire ça :
char vers[]="V0190";
sprintf (to_print, "Ma chaine est %s", vers);
n'est ce pas ?
Donc pour résumer, je peux faire ça :
char vers[]="V0190";
sprintf (to_print, "Ma chaine est %s", vers);
n'est ce pas ?
Ravachol
Messages postés
566
Date d'inscription
vendredi 5 mars 2004
Statut
Membre
Dernière intervention
30 octobre 2005
120
>
Nico
31 janv. 2005 à 18:06
31 janv. 2005 à 18:06
Salut,
Si tu veux juste afficher la chaine tu peux écrire plus simplement comme cela:
Eventuellement ajouter un \n après le %s pour positionner le curseur sur la ligne suivante.
A++
Si tu veux juste afficher la chaine tu peux écrire plus simplement comme cela:
char vers[]="V0190"; printf ("Ma chaine est %s", vers);
Eventuellement ajouter un \n après le %s pour positionner le curseur sur la ligne suivante.
A++