SHARE
TWEET

Untitled

a guest Nov 14th, 2017 54 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. char * strtoken(char *, char *);
  5.  
  6. int main(){
  7.     char * cadena = malloc(255*sizeof(char));
  8.     strcpy(cadena, "Hola como estas");
  9.     printf("La cadena es: \"%s\"\n", strtoken(cadena, " "));
  10.     printf("La cadena es: \"%s\"", strtoken(0, " "));
  11.     free(cadena);
  12.     return 0;
  13. }
  14.  
  15. char * strtoken(char *cadena, char *delimitador){
  16.     int i, j;
  17.     static char *puntero;
  18.     if(cadena){
  19.         for(i=0;*(cadena+i);i++){
  20.             for(j=0;*(delimitador+j);j++){
  21.                 if(*(cadena+i)==*(delimitador+j)){
  22.                     *(cadena+i)=0;
  23.                     puntero = (cadena+i+1);
  24.                     return cadena;
  25.                 }
  26.             }
  27.         }
  28.     }
  29.  
  30.     char *temporal = puntero;
  31.     int bandera;
  32.     if(puntero){
  33.          for(i=0, bandera=1;*(temporal+i)&&bandera;i++){
  34.             for(j=0;*(delimitador+j);j++){
  35.                 if(*(temporal+i)==*(delimitador+j)){
  36.                     *(temporal+i)=0;
  37.                     puntero = (temporal+i+1);
  38.                     break;
  39.                 }
  40.             }
  41.         }
  42.         if(bandera){
  43.             puntero=0;
  44.         }
  45.     }
  46.     return temporal;
  47. }
RAW Paste Data
Top