Differences

This shows you the differences between two versions of the page.

Link to this comparison view

codaz:c:string_split [2010/01/12 13:29] (current)
Line 1: Line 1:
 +Dans cet exemple on considère que :
  
 +char *str est une chaine de caractères qui se finit par '​\0'​
 +on passe le char * * split déja alloué, i.e. on a malloc() ou on passe une adresse de tableau
 +la fonction retourne le nombre d'​elements du char * *
 +
 +<code c>
 +int
 +splitstr(char **split, char *str, char sep)
 +{
 +        uint16_t i = 0;
 +        char *p = str;
 +
 +        *split = str;
 +
 +        while (*p && (*p != '​\n'​) && (*p != '​\r'​)) {
 +                if (*p == sep) {
 +                        *p++ = 0;
 +                        if ((*p != 0) && (*p != sep))
 +                                split[++i] = p;
 +                }
 +                p++;
 +        }
 +
 +        return (++i);
 +}
 +</​code>​
codaz/c/string_split.txt · Last modified: 2010/01/12 13:29 (external edit)