Declaration une chaine de caracter en langage C
lotfi de
Messages postés
82
Date d'inscription
Statut
Membre
Dernière intervention
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour Mes amis
je suis ici aujordhui pour m aide de connais l syntax de declaration de chaine de caracter en langage c svp mes amis par exemple pour l entier :
int nom de var ;
euuhh pour le chaine de caracter quoi???
svp aide moi et merci :))
je suis ici aujordhui pour m aide de connais l syntax de declaration de chaine de caracter en langage c svp mes amis par exemple pour l entier :
int nom de var ;
euuhh pour le chaine de caracter quoi???
svp aide moi et merci :))
A voir également:
- Declaration d'un caractere en c
- Déclaration - Guide
- En plus des revenus, il ne faut surtout pas oublier de faire cette déclaration en ligne aux impôts - Guide
- Caractère ascii - Guide
- Caractère spéciaux - Guide
- Caractères spéciaux : comment les saisir facilement - Guide
5 réponses
Bonjour
Il n'existe pas de chaînes de caractères à proprement parler en C. Il existe des tableaux de caractères qui se déclarent avec la même syntaxe que les autres types de tableaux :
Il n'existe pas de chaînes de caractères à proprement parler en C. Il existe des tableaux de caractères qui se déclarent avec la même syntaxe que les autres types de tableaux :
char nom_du_tableau [nb_elements];
par exemple pour variable nom est ce que possible d utiliser type char pour recoit le variable nom un nom par exemple "mohamad"
Je ne suis pas sûr de comprendre la question. Si tu veux demander si tu as le droit d'appeler une variable mohamad, c'est oui. par exemple :
Et même :
char mohamad[10];Si c'et pour déclarer une variable et l'initialiser aec le mot "mohamad", tu peux faire :
char ma_variable[]="mohamad";qui définit un tableau de 8 caractères ( 7 lettres plus un caractère nul pour marquer la fin)
Et même :
char mohamad[]="mohamad";
strcpy pour copier une chaine 1 vers une chaine 2.
Et char* chaine = (char*) malloc(x*sizeof(char));
Pour une chaine de x caracteres dont tu ne connais pas la taille à l'allocation.
OUBLIEZ PAS LE FREE :)
Et char* chaine = (char*) malloc(x*sizeof(char));
Pour une chaine de x caracteres dont tu ne connais pas la taille à l'allocation.
OUBLIEZ PAS LE FREE :)
Le cast est superflu mais permet, d'une part, de se rendre compte de ce qu'on fait, et est beaucoup plus "propre" que le faire naturellement. Pour le "sizeof(char)" je suis d'accord.
Ps: c'est comme la direction vers NULL d'un pointeur sur structure lors de la libération ... pourquoi faire ? bah pour la propreté, c'est une habitude à prendre.
Ps: c'est comme la direction vers NULL d'un pointeur sur structure lors de la libération ... pourquoi faire ? bah pour la propreté, c'est une habitude à prendre.
Le cast est superflu mais permet, d'une part, de se rendre compte de ce qu'on fait, et est beaucoup plus "propre" que le faire naturellement.
Pas vraiment... Historiquement le cast sur les malloc était fait en ANSI lorsque le type void* n'existait pas. Depuis que le void* existe, il est inutile de caster et est même déconseillé. Certains compilateurs masqueraient en effet la non inclusion de l'entête malloc.h...
c'est comme la direction vers NULL d'un pointeur sur structure lors de la libération ... pourquoi faire ? bah pour la propreté, c'est une habitude à prendre.
Là c'est différent. Effectivement, c'est une bonne habitude de prendre. Et pour plusieurs raisons.
Pas vraiment... Historiquement le cast sur les malloc était fait en ANSI lorsque le type void* n'existait pas. Depuis que le void* existe, il est inutile de caster et est même déconseillé. Certains compilateurs masqueraient en effet la non inclusion de l'entête malloc.h...
c'est comme la direction vers NULL d'un pointeur sur structure lors de la libération ... pourquoi faire ? bah pour la propreté, c'est une habitude à prendre.
Là c'est différent. Effectivement, c'est une bonne habitude de prendre. Et pour plusieurs raisons.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Les chaînes de caractères n'existent pas en C, donc tu ne peux pas en déclarer une. Le tableau de char est le moyen habituel pour faire la même chose.
Je crois qu'en C++, il existe un type String, mais je ne connais pas assez le C++ pour en dire davantage.