C ++ strtok () - Libreria standard C ++

La funzione strtok () in C ++ restituisce il token successivo in una stringa di byte terminata da null.

prototipo strtok ()

 char * strtok (char * str, const char * delim);

La strtok()funzione accetta due argomenti: str e delim. Questa funzione trova il token nella stringa puntata da strtok. Il delim del puntatore punta ai caratteri separatori.

Questa funzione può essere chiamata più volte per ottenere token dalla stessa stringa. Ci sono due casi:

  • Se str non è NULL:
    una chiamata a strtok () è considerata la prima chiamata per quella stringa. La funzione cerca il primo carattere che non è contenuto in delim. Se non viene trovato alcun carattere di questo tipo, la stringa non contiene alcun token. Quindi viene restituito un puntatore nullo. Se viene trovato tale carattere, da lì in poi la funzione ricerca un carattere presente in delim. Se non viene trovato alcun separatore, str ha un solo token. Se viene trovato un separatore, viene sostituito da " 0" e il puntatore al carattere successivo viene memorizzato in una posizione statica per le successive chiamate. Infine, la funzione restituisce il puntatore all'inizio del token.
  • Se str è NULL:
    la chiamata viene considerata come chiamate successive a strtok e la funzione continua da dove era stata interrotta nella chiamata precedente.

È definito nel file di intestazione "> file di intestazione.

strtok () Parametri

  • str: Puntatore alla stringa di byte terminata da null da tokenizzare.
  • delim: Puntatore alla stringa di byte terminata da null che contiene i separatori.

strtok () Restituisce il valore

La strtok()funzione restituisce il puntatore al token successivo, se presente, oppure restituisce NULL se non vengono trovati più token.

Esempio: come funziona la funzione strtok ()

 #include #include using namespace std; int main() ( char str() = "parrot,owl,sparrow,pigeon,crow"; char delim() = ","; cout << "The tokens are:" << endl; char *token = strtok(str,delim); while (token) ( cout << token << endl; token = strtok(NULL,delim); ) return 0; )

Quando esegui il programma, l'output sarà:

 I gettoni sono: pappagallo gufo passero piccione corvo

Articoli interessanti...