Traitement de chaine de caractere en C

Résolu
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
--
C* -----> Either exist as you are or be as you look <---- C*
Configuration: Linux
Firefox 1.0.7

6 réponses

  1. Contributeur
    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).
    2
    1. Contributeur
      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.
      1
      1. 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.

        0
        1. 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];
          0
          1. Contributeur
            Voici la liste des fonctions de bases en C pour les chaines de caracteres
            strcpy
            strncpy
            strcat
            strncat
            strcmp
            strncmp
            strlen
            strchr
            strrchr
            strstr
            strspn
            strcspn
            strpbrk
            strtok
            Consulte la doc pour plus de renseignements
            0