---
name: "id_t"
section: "3type"
platform: "linux"
package: "man-pages"
version: "6.19-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/id_t/3type"
---

# id\_t(3type)

process/user/group identifier

## NAME

pid\_t, uid\_t, gid\_t, id\_t - process/user/group identifier

## LIBRARY

Standard C library (*libc*)

## SYNOPSIS

```
#include <sys/types.h>
```

**typedef** /\* ... \*/ **pid\_t;** **typedef** /\* ... \*/ **uid\_t;** **typedef** /\* ... \*/ **gid\_t;** **typedef** /\* ... \*/ **id\_t;**

## DESCRIPTION

*pid\_t* is a type used for storing process IDs, process group IDs, and session IDs. It is a signed integer type.

*uid\_t* is a type used to hold user IDs. It is an integer type.

*gid\_t* is a type used to hold group IDs. It is an integer type.

*id\_t* is a type used to hold a general identifier. It is an integer type that can be used to contain a *pid\_t*, *uid\_t*, or *gid\_t*.

## STANDARDS

POSIX.1-2024.

## HISTORY

- *pid\_t* *uid\_t* *gid\_t*

  POSIX.1-1988.

- *id\_t*

  SUSv1, POSIX.1-2001 XSI, POSIX.1-2008.

## NOTES

The following headers also provide *pid\_t*: *\<fcntl.h\>*, *\<sched.h\>*, *\<signal.h\>*, *\<spawn.h\>*, *\<sys/msg.h\>*, *\<sys/sem.h\>*, *\<sys/shm.h\>*, *\<sys/wait.h\>*, *\<termios.h\>*, *\<time.h\>*, *\<unistd.h\>*, and *\<utmpx.h\>*.

The following headers also provide *uid\_t*: *\<pwd.h\>*, *\<signal.h\>*, *\<stropts.h\>*, *\<sys/ipc.h\>*, *\<sys/stat.h\>*, and *\<unistd.h\>*.

The following headers also provide *gid\_t*: *\<grp.h\>*, *\<pwd.h\>*, *\<signal.h\>*, *\<stropts.h\>*, *\<sys/ipc.h\>*, *\<sys/stat.h\>*, and *\<unistd.h\>*.

The following header also provides *id\_t*: *\<sys/resource.h\>*.

## SEE ALSO

[**chown**(2)](/chown/2.md), [**fork**(2)](/fork/2.md), [**getegid**(2)](/getegid/2.md), [**geteuid**(2)](/geteuid/2.md), [**getgid**(2)](/getgid/2.md), [**getgroups**(2)](/getgroups/2.md), [**getpgid**(2)](/getpgid/2.md), [**getpid**(2)](/getpid/2.md), [**getppid**(2)](/getppid/2.md), [**getpriority**(2)](/getpriority/2.md), [**getpwnam**(3)](/getpwnam/3.md), [**getresgid**(2)](/getresgid/2.md), [**getresuid**(2)](/getresuid/2.md), [**getsid**(2)](/getsid/2.md), [**gettid**(2)](/gettid/2.md), [**getuid**(2)](/getuid/2.md), [**kill**(2)](/kill/2.md), [**pidfd\_open**(2)](/pidfd_open/2.md), [**sched\_setscheduler**(2)](/sched_setscheduler/2.md), [**waitid**(2)](/waitid/2.md), [**getgrnam**(3)](/getgrnam/3.md), [**sigqueue**(3)](/sigqueue/3.md), [**credentials**(7)](/credentials/7.md)
