---
name: "ustrtok"
section: "3alleg4"
platform: "linux"
package: "allegro4-doc"
version: "2:4.4.3.1-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/ustrtok/3alleg4"
---

# ustrtok(3alleg4)

Retrieves tokens from a string. Allegro game programming library.

## NAME

ustrtok - Retrieves tokens from a string. Allegro game programming library.

## SYNOPSIS

**#include \<allegro.h\>**

**char \*ustrtok(char \*s, const char \*set);**

## DESCRIPTION

This function retrieves tokens from \`s' which are delimited by characters from \`set'. To initiate the search, pass the string to be searched as \`s'. For the remaining tokens, pass NULL instead. Warning: Since ustrtok alters the string it is parsing, you should always copy the string to a temporary buffer before parsing it. Also, this function is not re-entrant (ie. you cannot parse two strings at the same time). Example:

```
   char *word;
   char string[]="some-words with dashes";
   char *temp = ustrdup(string);
   word = ustrtok(temp, " -");
   while (word) {
      allegro_message("Found `%s'\n", word);
      word = ustrtok(NULL, " -");
   }
   free(temp);
```

## RETURN VALUE

Returns a pointer to the token, or NULL if no more are found.

## SEE ALSO

**uconvert**(3alleg4), **ustrchr**(3alleg4), **ustrrchr**(3alleg4), **ustrstr**(3alleg4), **ustrpbrk**(3alleg4), **ustrtok\_r**(3alleg4), **allegro\_message**(3alleg4), **ustrncpy**(3alleg4), **exgui**(3alleg4)
