C ++ strtok () - C ++ standardowa biblioteka

Funkcja strtok () w C ++ zwraca następny token w łańcuchu bajtów zakończonym znakiem null.

strtok () prototyp

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

strtok()Funkcja przyjmuje dwa argumenty: str i delim. Ta funkcja znajduje token w ciągu wskazywanym przez strtok. Ogranicznik wskaźnika wskazuje na znaki separatora.

Tę funkcję można wywołać wiele razy, aby uzyskać tokeny z tego samego ciągu. Istnieją dwa przypadki:

  • Jeśli str nie ma wartości NULL:
    wywołanie strtok () jest uważane za pierwsze wywołanie tego ciągu. Funkcja wyszukuje pierwszy znak, który nie jest zawarty w separatorze. Jeśli nie zostanie znaleziony taki znak, ciąg nie zawiera żadnego tokenu. Więc zwracany jest pusty wskaźnik. Jeśli taki znak zostanie znaleziony, funkcja wyszukuje stamtąd znak obecny w delim. Jeśli nie zostanie znaleziony separator, str ma tylko jeden token. Jeśli zostanie znaleziony separator, jest on zastępowany znakiem „ 0”, a wskaźnik do następnego znaku jest przechowywany w statycznej lokalizacji dla kolejnych wywołań. Na koniec funkcja zwraca wskaźnik na początek tokenu.
  • Jeśli str ma wartość NULL:
    wywołanie jest traktowane jako kolejne wywołania strtok, a funkcja kontynuuje pracę od miejsca, w którym opuściła poprzednie wywołanie.

Jest zdefiniowany w pliku nagłówkowym "> plik nagłówkowy.

strtok () Parametry

  • str: Wskaźnik do ciągu bajtów zakończonych wartością null do tokenizacji.
  • delim: Wskaźnik do łańcucha bajtów zakończonego znakiem null, który zawiera separatory.

strtok () Zwracana wartość

strtok()Funkcja zwraca wskaźnik do następnego tokena czy istnieje, czy to zwraca NULL jeśli nie zostaną znalezione żadne więcej żetonów.

Przykład: Jak działa funkcja 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; )

Po uruchomieniu programu wynik będzie następujący:

 Żetony to: papuga sowa wróbel gołąb wrona

Interesujące artykuły...