---
name: "ustrtol"
section: "3alleg"
platform: "linux"
package: "liballegro-doc"
version: "2:4.2.2-2.2"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/ustrtol"
---

# ustrtol(3alleg)

Converts a string into an integer. Allegro game programming library.

## NAME

ustrtol - Converts a string into an integer. Allegro game programming library.

## SYNOPSIS

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

**long ustrtol(const char \*s, char \*\*endp, int base);**

## DESCRIPTION

This function converts the initial part of \`s' to a signed integer, setting \`\*endp' to point to the first unused character, if \`endp' is not a NULL pointer. The \`base' argument indicates what base the digits (or letters) should be treated as. If \`base' is zero, the base is determined by looking for \`0x', \`0X', or \`0' as the first part of the string, and sets the base used to 16, 16, or 8 if it finds one. The default base is 10 if none of those prefixes are found. Example:

```
   char *endp, *string = "456.203 askdfg";
   int number = ustrtol(string, &endp, 10);
```

## RETURN VALUE

Returns the string converted as a value of type \`long int'. If nothing was converted, returns zero with \`\*endp' pointing to the beginning of \`s'.

## SEE ALSO

[**uconvert**(3alleg)](/uconvert/3alleg.md), [**ustrtod**(3alleg)](/ustrtod/3alleg.md), [**uatof**(3alleg)](/uatof/3alleg.md)
