ISDIGIT(3) | Library Functions Manual | ISDIGIT(3)

# NAME

`isdigit`, `isdigit_l` — decimal-digit single-byte character test

# SYNOPSIS

`#include <ctype.h>`

int
`isdigit`(int c);

int
`isdigit_l`(int c, locale_t locale);

# DESCRIPTION

The `isdigit`() and `isdigit_l`() functions test for any decimal-digit character. In the C locale, the complete list of decimal digits is 0 and 1–9. OpenBSD always uses the C locale for these functions, ignoring the global locale, the thread-specific locale, and the locale argument.

# RETURN VALUES

These functions return zero if the character tests false or non-zero if the character tests true.

# ENVIRONMENT

On systems supporting non-ASCII single-byte character encodings, different c arguments may correspond to the digits, and the results of `isdigit`() may depend on the `LC_CTYPE` locale(1).

# SEE ALSO

isalnum(3), isalpha(3), isascii(3), isblank(3), iscntrl(3), isgraph(3), islower(3), isprint(3), ispunct(3), isspace(3), isupper(3), iswdigit(3), isxdigit(3), stdio(3), toascii(3), tolower(3), toupper(3), ascii(7)

# STANDARDS

The `isdigit`() function conforms to ANSI X3.159-1989 (“ANSI C89”), and `isdigit_l`() to IEEE Std 1003.1-2008 (“POSIX.1”).

# HISTORY

The `isdigit`() function first appeared in Version 7 AT&T UNIX, and `isdigit_l`() has been available since OpenBSD 6.2.

# CAVEATS

The argument c must be `EOF` or representable as an unsigned char; otherwise, the result is undefined.

January 20, 2023 | Debian