Traitement de chaine de caractere en C
Résolu
LaZo61
Messages postés
53
Date d'inscription
Statut
Membre
Dernière intervention
-
LaZo61 Messages postés 53 Date d'inscription Statut Membre Dernière intervention -
LaZo61 Messages postés 53 Date d'inscription Statut Membre Dernière intervention -
Bonjour
Voila je suis nouveau en C donc j'aimerai avoir des petites precision.
J'ai une chaine de caractere char *s="blallalalal" que je voudrais traite c'est a dire par exemple rajoute ou enleve des morceaux :
exemple
char *s="blalalalal";
(void) traitement (char *s) {
faire le traitement
}
char *saprestraitement="blalalalalsssssssssss";
Est ce que quelqu'un pourrai m'explique comment je peux faire ca merci
Voila je suis nouveau en C donc j'aimerai avoir des petites precision.
J'ai une chaine de caractere char *s="blallalalal" que je voudrais traite c'est a dire par exemple rajoute ou enleve des morceaux :
exemple
char *s="blalalalal";
(void) traitement (char *s) {
faire le traitement
}
char *saprestraitement="blalalalalsssssssssss";
Est ce que quelqu'un pourrai m'explique comment je peux faire ca merci
A voir également:
- Traitement de chaine de caractere en C
- Caractère ascii - Guide
- Caractère spéciaux - Guide
- Reconsidérer le traitement de vos informations à des fins publicitaires - Accueil - Réseaux sociaux
- Caractere speciaux - Guide
- Traitement de texte gratuit - Guide
6 réponses
Il y a énormément de fonctions disponibles dans la librairie standard pour manipuler des chaines de caractères:
http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man3/string.3.html
string, strcasecmp, strcat, strchr, strcmp, strcoll, strcpy, strcspn, strdup, strfry, strlen, strncat, strncmp, strncpy, strncasecmp, strpbrk, strrchr, strsep, strspn, strstr, strtok, strxfrm, index, rindex - Opérations sur les chaînes de caractères (string).
http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man3/string.3.html
string, strcasecmp, strcat, strchr, strcmp, strcoll, strcpy, strcspn, strdup, strfry, strlen, strncat, strncmp, strncpy, strncasecmp, strpbrk, strrchr, strsep, strspn, strstr, strtok, strxfrm, index, rindex - Opérations sur les chaînes de caractères (string).
Si, tu peux initialiser une chaine par '='.
char *mychaine="coucou"; va être accepter par le compilateur.
Par contre, il ne faut pas le faire de manière dynamique sous peine de recevoir une belle erreur de segmentation.
char *mychaine="coucou"; va être accepter par le compilateur.
Par contre, il ne faut pas le faire de manière dynamique sous peine de recevoir une belle erreur de segmentation.
Bonjour, il existe des fonctions en c qui font déjà ce travail pas besoin de se compliquer la vie.
pour concaténer 2 char* il exsite strcat(char*, char*) et il doit en exister pour découper 2 chaines aussi.
pour concaténer 2 char* il exsite strcat(char*, char*) et il doit en exister pour découper 2 chaines aussi.
Salut,
Déjà pour initialiser ta chaîne de caractère en C, tu dois faire strcpy ou sprintf et non '=' (y a pas de std::)
Ensuite pour concaténer oui il y a strcat et sprintf encore une fois. Pour séparer, soit tu fais un for qui boucle sur les cases qui t'intéresse, soit tu passes par un pointeur sur la case qui t'intéresse dans ta chaîne du genre ta_chaine_coupee=&ta_chaine_de_base[la_case_qui_t_interesse];
Déjà pour initialiser ta chaîne de caractère en C, tu dois faire strcpy ou sprintf et non '=' (y a pas de std::)
Ensuite pour concaténer oui il y a strcat et sprintf encore une fois. Pour séparer, soit tu fais un for qui boucle sur les cases qui t'intéresse, soit tu passes par un pointeur sur la case qui t'intéresse dans ta chaîne du genre ta_chaine_coupee=&ta_chaine_de_base[la_case_qui_t_interesse];
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question