ℹ️ Skipped - page is already crawled
| Filter | Status | Condition | Details |
|---|---|---|---|
| HTTP status | PASS | download_http_code = 200 | HTTP 200 |
| Age cutoff | PASS | download_stamp > now() - 6 MONTH | 0.2 months ago |
| History drop | PASS | isNull(history_drop_reason) | No drop reason |
| Spam/ban | PASS | fh_dont_index != 1 AND ml_spam_score = 0 | ml_spam_score=0 |
| Canonical | PASS | meta_canonical IS NULL OR = '' OR = src_unparsed | Not set |
| Property | Value |
|---|---|
| URL | https://manual.cs50.io/ |
| Last Crawled | 2026-04-05 20:05:02 (6 days ago) |
| First Indexed | 2020-09-19 20:55:03 (5 years ago) |
| HTTP Status Code | 200 |
| Meta Title | CS50 Manual Pages |
| Meta Description | null |
| Meta Canonical | null |
| Boilerpipe Text | Manual pages for the C standard library, the C POSIX library, and the CS50 Library for
those less comfortable
.
aio.h
aio_cancel
-
cancel an outstanding asynchronous I/O request
aio_error
-
get error status of asynchronous I/O operation
aio_fsync
-
asynchronous file synchronization
aio_init
-
asynchronous I/O initialization
aio_read
-
asynchronous read
aio_return
-
get return status of asynchronous I/O operation
aio_suspend
-
wait for asynchronous I/O operation or timeout
aio_write
-
asynchronous write
lio_listio
-
initiate a list of I/O requests
arpa/inet.h
byteorder
-
convert values between host and network byte order
htonl
-
convert values between host and network byte order
htons
-
convert values between host and network byte order
inet_net_ntop
-
Internet network number conversion
inet_net_pton
-
Internet network number conversion
inet_ntop
-
convert IPv4 and IPv6 addresses from binary to text form
inet_pton
-
convert IPv4 and IPv6 addresses from text to binary form
ntohl
-
convert values between host and network byte order
ntohs
-
convert values between host and network byte order
assert.h
_Static_assert
-
fail compilation if assertion is false
assert
-
abort the program if assertion is false
assert_perror
-
test errnum and abort
static_assert
-
fail compilation if assertion is false
complex.h
cabs
-
absolute value of a complex number
cabsf
-
absolute value of a complex number
cabsl
-
absolute value of a complex number
cacos
-
complex arc cosine
cacosf
-
complex arc cosine
cacosh
-
complex arc hyperbolic cosine
cacoshf
-
complex arc hyperbolic cosine
cacoshl
-
complex arc hyperbolic cosine
cacosl
-
complex arc cosine
carg
-
calculate the complex argument
cargf
-
calculate the complex argument
cargl
-
calculate the complex argument
casin
-
complex arc sine
casinf
-
complex arc sine
casinh
-
complex arc sine hyperbolic
casinhf
-
complex arc sine hyperbolic
casinhl
-
complex arc sine hyperbolic
casinl
-
complex arc sine
catan
-
complex arc tangents
catanf
-
complex arc tangents
catanh
-
complex arc tangents hyperbolic
catanhf
-
complex arc tangents hyperbolic
catanhl
-
complex arc tangents hyperbolic
catanl
-
complex arc tangents
ccos
-
complex cosine function
ccosf
-
complex cosine function
ccosh
-
complex hyperbolic cosine
ccoshf
-
complex hyperbolic cosine
ccoshl
-
complex hyperbolic cosine
ccosl
-
complex cosine function
cexp
-
complex exponential function
cexp2
-
base-2 exponent of a complex number
cexp2f
-
base-2 exponent of a complex number
cexp2l
-
base-2 exponent of a complex number
cexpf
-
complex exponential function
cexpl
-
complex exponential function
cimag
-
get imaginary part of a complex number
cimagf
-
get imaginary part of a complex number
cimagl
-
get imaginary part of a complex number
clog
-
natural logarithm of a complex number
clog10
-
base-10 logarithm of a complex number
clog10f
-
base-10 logarithm of a complex number
clog10l
-
base-10 logarithm of a complex number
clog2
-
base-2 logarithm of a complex number
clog2f
-
base-2 logarithm of a complex number
clog2l
-
base-2 logarithm of a complex number
clogf
-
natural logarithm of a complex number
clogl
-
natural logarithm of a complex number
complex
-
basics of complex mathematics
conj
-
calculate the complex conjugate
conjf
-
calculate the complex conjugate
conjl
-
calculate the complex conjugate
cpow
-
complex power function
cpowf
-
complex power function
cpowl
-
complex power function
cproj
-
project into Riemann Sphere
cprojf
-
project into Riemann Sphere
cprojl
-
project into Riemann Sphere
creal
-
get real part of a complex number
crealf
-
get real part of a complex number
creall
-
get real part of a complex number
csin
-
complex sine function
csinf
-
complex sine function
csinh
-
complex hyperbolic sine
csinhf
-
complex hyperbolic sine
csinhl
-
complex hyperbolic sine
csinl
-
complex sine function
csqrt
-
complex square root
csqrtf
-
complex square root
csqrtl
-
complex square root
ctan
-
complex tangent function
ctanf
-
complex tangent function
ctanh
-
complex hyperbolic tangent
ctanhf
-
complex hyperbolic tangent
ctanhl
-
complex hyperbolic tangent
ctanl
-
complex tangent function
get_char
-
prompts user for a line of text from stdin and returns...
prompt a user for a
char
get_double
-
prompts user for a line of text from stdin and returns...
prompt a user for a
double
get_float
-
prompts user for a line of text from stdin and returns...
prompt a user for a
float
get_int
-
prompts user for a line of text from stdin and returns...
prompt a user for an
int
get_long
-
prompts user for a line of text from stdin and returns...
prompt a user for an
long
get_long_long
-
prompts user for a line of text from stdin and returns...
get_string
-
prompts user for a line of text from stdin and returns...
prompt a user for a
string
ctype.h
isalnum
-
character classification functions
check whether a character is alphanumeric
isalnum_l
-
character classification functions
isalpha
-
character classification functions
check whether a character is alphabetical
isalpha_l
-
character classification functions
isascii
-
character classification functions
isascii_l
-
character classification functions
isblank
-
character classification functions
check whether a character is blank (i.e., a space or tab)
isblank_l
-
character classification functions
iscntrl
-
character classification functions
iscntrl_l
-
character classification functions
isdigit
-
character classification functions
check whether a character is a digit
isdigit_l
-
character classification functions
isgraph
-
character classification functions
isgraph_l
-
character classification functions
islower
-
character classification functions
check whether a character is lowercase
islower_l
-
character classification functions
isprint
-
character classification functions
isprint_l
-
character classification functions
ispunct
-
character classification functions
check whether a character is punctuation
ispunct_l
-
character classification functions
isspace
-
character classification functions
check whether a character is whitespace (e.g., a newline, space, or tab)
isspace_l
-
character classification functions
isupper
-
character classification functions
check whether a character is uppercase
isupper_l
-
character classification functions
isxdigit
-
character classification functions
isxdigit_l
-
character classification functions
toascii
-
convert character to ASCII
tolower
-
convert uppercase or lowercase
convert a
char
to lowercase
tolower_l
-
convert uppercase or lowercase
toupper
-
convert uppercase or lowercase
convert a
char
to uppercase
toupper_l
-
convert uppercase or lowercase
dirent.h
alphasort
-
scan a directory for matching entries
getdirentries
-
get directory entries in a filesystem-independent format
readdir
-
read a directory
readdir_r
-
read a directory
scandir
-
scan a directory for matching entries
scandirat
-
scan a directory for matching entries
seekdir
-
set the position of the next readdir() call in the dir...
telldir
-
return current location in directory stream
versionsort
-
scan a directory for matching entries
dlfcn.h
dladdr
-
translate address to symbolic information
dladdr1
-
translate address to symbolic information
dlclose
-
open and close a shared object
dlerror
-
obtain error diagnostic for functions in the dlopen API
dlmopen
-
open and close a shared object
dlopen
-
open and close a shared object
dlsym
-
obtain address of a symbol in a shared object or execu...
dlvsym
-
obtain address of a symbol in a shared object or execu...
errno.h
errno
-
number of last error
program_invocation_name
-
obtain name used to invoke calling program
program_invocation_short_name
-
obtain name used to invoke calling program
fcntl.h
arm_fadvise
-
predeclare an access pattern for file data
arm_fadvise64_64
-
predeclare an access pattern for file data
arm_sync_file_range
-
sync a file segment with disk
creat
-
open and possibly create a file
fadvise64
-
predeclare an access pattern for file data
fadvise64_64
-
predeclare an access pattern for file data
fallocate
-
manipulate file space
fcntl
-
manipulate file descriptor
fcntl64
-
manipulate file descriptor
name_to_handle_at
-
obtain handle for a pathname and open file via a handle
open
-
open and possibly create a file
open_by_handle_at
-
obtain handle for a pathname and open file via a handle
openat
-
open and possibly create a file
posix_fadvise
-
predeclare an access pattern for file data
posix_fallocate
-
allocate file space
readahead
-
initiate file readahead into page cache
splice
-
splice data to/from a pipe
sync_file_range
-
sync a file segment with disk
sync_file_range2
-
sync a file segment with disk
tee
-
duplicating pipe content
vmsplice
-
splice user pages to/from a pipe
fenv.h
feclearexcept
-
floating-point rounding and exception handling
fedisableexcept
-
floating-point rounding and exception handling
feenableexcept
-
floating-point rounding and exception handling
fegetenv
-
floating-point rounding and exception handling
fegetexcept
-
floating-point rounding and exception handling
fegetexceptflag
-
floating-point rounding and exception handling
fegetround
-
floating-point rounding and exception handling
feholdexcept
-
floating-point rounding and exception handling
fenv
-
floating-point rounding and exception handling
feraiseexcept
-
floating-point rounding and exception handling
fesetenv
-
floating-point rounding and exception handling
fesetexceptflag
-
floating-point rounding and exception handling
fesetround
-
floating-point rounding and exception handling
fetestexcept
-
floating-point rounding and exception handling
feupdateenv
-
floating-point rounding and exception handling
fmtmsg.h
addseverity
-
introduce new severity classes
fmtmsg
-
print formatted error messages
fnmatch.h
fnmatch
-
match filename or pathname
ftw.h
ftw
-
file tree walk
nftw
-
file tree walk
glob.h
glob
-
find pathnames matching a pattern, free memory from gl...
globfree
-
find pathnames matching a pattern, free memory from gl...
grp.h
fgetgrent_r
-
get group file entry reentrantly
getgrent_r
-
get group file entry reentrantly
getgrouplist
-
get list of groups to which a user belongs
putgrent
-
write a group database entry to a file
iconv.h
iconv
-
perform character set conversion
iconv_close
-
deallocate descriptor for character set conversion
iconv_open
-
allocate descriptor for character set conversion
inttypes.h
strtoimax
-
convert string to integer
strtoumax
-
convert string to integer
langinfo.h
nl_langinfo
-
query language and locale information
nl_langinfo_l
-
query language and locale information
libgen.h
basename
-
parse pathname components
dirname
-
parse pathname components
limits.h
MB_LEN_MAX
-
maximum multibyte length of a character across all loc...
realpath
-
return the canonicalized absolute pathname
locale.h
duplocale
-
duplicate a locale object
freelocale
-
create, modify, and free a locale object
locale
-
description of multilanguage support
localeconv
-
get numeric formatting information
newlocale
-
create, modify, and free a locale object
setlocale
-
set the current locale
uselocale
-
set/get the locale for the calling thread
math.h
acos
-
arc cosine function
acosf
-
arc cosine function
acosh
-
inverse hyperbolic cosine function
acoshf
-
inverse hyperbolic cosine function
acoshl
-
inverse hyperbolic cosine function
acosl
-
arc cosine function
asin
-
arc sine function
asinf
-
arc sine function
asinh
-
inverse hyperbolic sine function
asinhf
-
inverse hyperbolic sine function
asinhl
-
inverse hyperbolic sine function
asinl
-
arc sine function
atan
-
arc tangent function
atan2
-
arc tangent function of two variables
atan2f
-
arc tangent function of two variables
atan2l
-
arc tangent function of two variables
atanf
-
arc tangent function
atanh
-
inverse hyperbolic tangent function
atanhf
-
inverse hyperbolic tangent function
atanhl
-
inverse hyperbolic tangent function
atanl
-
arc tangent function
cbrt
-
cube root function
cbrtf
-
cube root function
cbrtl
-
cube root function
ceil
-
ceiling function: smallest integral value not less tha...
calculate the ceiling of a number
ceilf
-
ceiling function: smallest integral value not less tha...
ceill
-
ceiling function: smallest integral value not less tha...
copysign
-
copy sign of a number
copysignf
-
copy sign of a number
copysignl
-
copy sign of a number
cos
-
cosine function
cosf
-
cosine function
cosh
-
hyperbolic cosine function
coshf
-
hyperbolic cosine function
coshl
-
hyperbolic cosine function
cosl
-
cosine function
drem
-
floating-point remainder function
dremf
-
floating-point remainder function
dreml
-
floating-point remainder function
erf
-
error function
erfc
-
complementary error function
erfcf
-
complementary error function
erfcl
-
complementary error function
erff
-
error function
erfl
-
error function
exp
-
base-e exponential function
exp10
-
base-10 exponential function
exp10f
-
base-10 exponential function
exp10l
-
base-10 exponential function
exp2
-
base-2 exponential function
exp2f
-
base-2 exponential function
exp2l
-
base-2 exponential function
expf
-
base-e exponential function
expl
-
base-e exponential function
expm1
-
exponential minus 1
expm1f
-
exponential minus 1
expm1l
-
exponential minus 1
fabs
-
absolute value of floating-point number
fabsf
-
absolute value of floating-point number
fabsl
-
absolute value of floating-point number
fdim
-
positive difference
fdimf
-
positive difference
fdiml
-
positive difference
finite
-
BSD floating-point classification functions
finitef
-
BSD floating-point classification functions
finitel
-
BSD floating-point classification functions
floor
-
largest integral value not greater than argument
calculate the floor of a number
floorf
-
largest integral value not greater than argument
floorl
-
largest integral value not greater than argument
fma
-
floating-point multiply and add
fmaf
-
floating-point multiply and add
fmal
-
floating-point multiply and add
fmax
-
determine maximum of two floating-point numbers
fmaxf
-
determine maximum of two floating-point numbers
fmaxl
-
determine maximum of two floating-point numbers
fmin
-
determine minimum of two floating-point numbers
fminf
-
determine minimum of two floating-point numbers
fminl
-
determine minimum of two floating-point numbers
fmod
-
floating-point remainder function
fmodf
-
floating-point remainder function
fmodl
-
floating-point remainder function
fpclassify
-
floating-point classification macros
frexp
-
convert floating-point number to fractional and integr...
frexpf
-
convert floating-point number to fractional and integr...
frexpl
-
convert floating-point number to fractional and integr...
gamma
-
(logarithm of the) gamma function
gammaf
-
(logarithm of the) gamma function
gammal
-
(logarithm of the) gamma function
HUGE_VAL
-
floating-point constants
HUGE_VALF
-
floating-point constants
HUGE_VALL
-
floating-point constants
hypot
-
Euclidean distance function
hypotf
-
Euclidean distance function
hypotl
-
Euclidean distance function
ilogb
-
get integer exponent of a floating-point value
ilogbf
-
get integer exponent of a floating-point value
ilogbl
-
get integer exponent of a floating-point value
INFINITY
-
floating-point constants
isfinite
-
floating-point classification macros
isgreater
-
floating-point relational tests without exception for NaN
isgreaterequal
-
floating-point relational tests without exception for NaN
isinf
-
floating-point classification macros
isinff
-
BSD floating-point classification functions
isinfl
-
BSD floating-point classification functions
isless
-
floating-point relational tests without exception for NaN
islessequal
-
floating-point relational tests without exception for NaN
islessgreater
-
floating-point relational tests without exception for NaN
isnan
-
floating-point classification macros
isnanf
-
BSD floating-point classification functions
isnanl
-
BSD floating-point classification functions
isnormal
-
floating-point classification macros
isunordered
-
floating-point relational tests without exception for NaN
j0
-
Bessel functions of the first kind
j0f
-
Bessel functions of the first kind
j0l
-
Bessel functions of the first kind
j1
-
Bessel functions of the first kind
j1f
-
Bessel functions of the first kind
j1l
-
Bessel functions of the first kind
jn
-
Bessel functions of the first kind
jnf
-
Bessel functions of the first kind
jnl
-
Bessel functions of the first kind
ldexp
-
multiply floating-point number by integral power of 2
ldexpf
-
multiply floating-point number by integral power of 2
ldexpl
-
multiply floating-point number by integral power of 2
lgamma
-
log gamma function
lgamma_r
-
log gamma function
lgammaf
-
log gamma function
lgammaf_r
-
log gamma function
lgammal
-
log gamma function
lgammal_r
-
log gamma function
llrint
-
round to nearest integer
llrintf
-
round to nearest integer
llrintl
-
round to nearest integer
llround
-
round to nearest integer
llroundf
-
round to nearest integer
llroundl
-
round to nearest integer
log
-
natural logarithmic function
log10
-
base-10 logarithmic function
log10f
-
base-10 logarithmic function
log10l
-
base-10 logarithmic function
log1p
-
logarithm of 1 plus argument
log1pf
-
logarithm of 1 plus argument
log1pl
-
logarithm of 1 plus argument
log2
-
base-2 logarithmic function
calculate the base-2 logarithm of a number
log2f
-
base-2 logarithmic function
log2l
-
base-2 logarithmic function
logb
-
get exponent of a floating-point value
logbf
-
get exponent of a floating-point value
logbl
-
get exponent of a floating-point value
logf
-
natural logarithmic function
logl
-
natural logarithmic function
lrint
-
round to nearest integer
lrintf
-
round to nearest integer
lrintl
-
round to nearest integer
lround
-
round to nearest integer
lroundf
-
round to nearest integer
lroundl
-
round to nearest integer
math_error
-
detecting errors from mathematical functions
matherr
-
SVID math library exception handling
modf
-
extract signed integral and fractional values from flo...
modff
-
extract signed integral and fractional values from flo...
modfl
-
extract signed integral and fractional values from flo...
NAN
-
floating-point constants
nan
-
return 'Not a Number'
nanf
-
return 'Not a Number'
nanl
-
return 'Not a Number'
nearbyint
-
round to nearest integer
nearbyintf
-
round to nearest integer
nearbyintl
-
round to nearest integer
nextafter
-
floating-point number manipulation
nextafterf
-
floating-point number manipulation
nextafterl
-
floating-point number manipulation
nextdown
-
return next floating-point number toward positive/nega...
nextdownf
-
return next floating-point number toward positive/nega...
nextdownl
-
return next floating-point number toward positive/nega...
nexttoward
-
floating-point number manipulation
nexttowardf
-
floating-point number manipulation
nexttowardl
-
floating-point number manipulation
nextup
-
return next floating-point number toward positive/nega...
nextupf
-
return next floating-point number toward positive/nega...
nextupl
-
return next floating-point number toward positive/nega...
pow
-
power functions
raise a number to a power
pow10
-
base-10 power functions
pow10f
-
base-10 power functions
pow10l
-
base-10 power functions
powf
-
power functions
powl
-
power functions
remainder
-
floating-point remainder function
remainderf
-
floating-point remainder function
remainderl
-
floating-point remainder function
remquo
-
remainder and part of quotient
remquof
-
remainder and part of quotient
remquol
-
remainder and part of quotient
rint
-
round to nearest integer
rintf
-
round to nearest integer
rintl
-
round to nearest integer
round
-
round to nearest integer, away from zero
round a number to the nearest integer
roundf
-
round to nearest integer, away from zero
roundl
-
round to nearest integer, away from zero
scalb
-
multiply floating-point number by integral power of ra...
scalbf
-
multiply floating-point number by integral power of ra...
scalbl
-
multiply floating-point number by integral power of ra...
scalbln
-
multiply floating-point number by integral power of radix
scalblnf
-
multiply floating-point number by integral power of radix
scalblnl
-
multiply floating-point number by integral power of radix
scalbn
-
multiply floating-point number by integral power of radix
scalbnf
-
multiply floating-point number by integral power of radix
scalbnl
-
multiply floating-point number by integral power of radix
signbit
-
test sign of a real floating-point number
signgam
-
log gamma function
significand
-
get mantissa of floating-point number
significandf
-
get mantissa of floating-point number
significandl
-
get mantissa of floating-point number
sin
-
sine function
sincos
-
calculate sin and cos simultaneously
sincosf
-
calculate sin and cos simultaneously
sincosl
-
calculate sin and cos simultaneously
sinf
-
sine function
sinh
-
hyperbolic sine function
sinhf
-
hyperbolic sine function
sinhl
-
hyperbolic sine function
sinl
-
sine function
sqrt
-
square root function
calculate the square root of a number
sqrtf
-
square root function
sqrtl
-
square root function
tan
-
tangent function
tanf
-
tangent function
tanh
-
hyperbolic tangent function
tanhf
-
hyperbolic tangent function
tanhl
-
hyperbolic tangent function
tanl
-
tangent function
tgamma
-
true gamma function
tgammaf
-
true gamma function
tgammal
-
true gamma function
trunc
-
round to integer, toward zero
truncf
-
round to integer, toward zero
truncl
-
round to integer, toward zero
y0
-
Bessel functions of the second kind
y0f
-
Bessel functions of the second kind
y0l
-
Bessel functions of the second kind
y1
-
Bessel functions of the second kind
y1f
-
Bessel functions of the second kind
y1l
-
Bessel functions of the second kind
yn
-
Bessel functions of the second kind
ynf
-
Bessel functions of the second kind
ynl
-
Bessel functions of the second kind
monetary.h
strfmon
-
convert monetary value to a string
strfmon_l
-
convert monetary value to a string
mqueue.h
mq_close
-
close a message queue descriptor
mq_getattr
-
get/set message queue attributes
mq_notify
-
register for notification when a message is available
mq_notify
-
register for notification when a message is available
mq_open
-
open a message queue
mq_open
-
open a message queue
mq_receive
-
receive a message from a message queue
mq_send
-
send a message to a message queue
mq_setattr
-
get/set message queue attributes
mq_timedreceive
-
receive a message from a message queue
mq_timedreceive
-
receive a message from a message queue
mq_timedsend
-
send a message to a message queue
mq_timedsend
-
send a message to a message queue
mq_unlink
-
remove a message queue
mq_unlink
-
remove a message queue
net/if.h
if_freenameindex
-
get network interface names and indexes
if_indextoname
-
mappings between network interface names and indexes
if_nameindex
-
get network interface names and indexes
if_nametoindex
-
mappings between network interface names and indexes
netdb.h
endhostent
-
get network host entry
endnetent
-
get network entry
endnetgrent
-
handle network group entries
endprotoent
-
get protocol entry
endrpcent
-
get RPC entry
endservent
-
get service entry
gai_cancel
-
asynchronous network address and service translation
gai_error
-
asynchronous network address and service translation
gai_suspend
-
asynchronous network address and service translation
getaddrinfo_a
-
asynchronous network address and service translation
gethostbyaddr
-
get network host entry
gethostbyaddr_r
-
get network host entry
gethostbyname
-
get network host entry
gethostbyname2
-
get network host entry
gethostbyname2_r
-
get network host entry
gethostbyname_r
-
get network host entry
gethostent
-
get network host entry
gethostent_r
-
get network host entry
getnetbyaddr
-
get network entry
getnetbyaddr_r
-
get network entry (reentrant)
getnetbyname
-
get network entry
getnetbyname_r
-
get network entry (reentrant)
getnetent
-
get network entry
getnetent_r
-
get network entry (reentrant)
getnetgrent
-
handle network group entries
getnetgrent_r
-
handle network group entries
getprotobyname
-
get protocol entry
getprotobyname_r
-
get protocol entry (reentrant)
getprotobynumber
-
get protocol entry
getprotobynumber_r
-
get protocol entry (reentrant)
getprotoent
-
get protocol entry
getprotoent_r
-
get protocol entry (reentrant)
getrpcbyname
-
get RPC entry
getrpcbyname_r
-
get RPC entry (reentrant)
getrpcbynumber
-
get RPC entry
getrpcbynumber_r
-
get RPC entry (reentrant)
getrpcent
-
get RPC entry
getrpcent_r
-
get RPC entry (reentrant)
getservbyname
-
get service entry
getservbyname_r
-
get service entry (reentrant)
getservbyport
-
get service entry
getservbyport_r
-
get service entry (reentrant)
getservent
-
get service entry
getservent_r
-
get service entry (reentrant)
h_errno
-
get network host entry
herror
-
get network host entry
hstrerror
-
get network host entry
innetgr
-
handle network group entries
rexec
-
return stream to a remote command
rexec_af
-
return stream to a remote command
sethostent
-
get network host entry
setnetent
-
get network entry
setnetgrent
-
handle network group entries
setprotoent
-
get protocol entry
setrpcent
-
get RPC entry
setservent
-
get service entry
netinet/in.h
dn_comp
-
resolver routines
dn_expand
-
resolver routines
res_init
-
resolver routines
res_mkquery
-
resolver routines
res_nclose
-
resolver routines
res_ninit
-
resolver routines
res_nmkquery
-
resolver routines
res_nquery
-
resolver routines
res_nquerydomain
-
resolver routines
res_nsearch
-
resolver routines
res_nsend
-
resolver routines
res_query
-
resolver routines
res_querydomain
-
resolver routines
res_search
-
resolver routines
res_send
-
resolver routines
resolver
-
resolver routines
nl_types.h
catclose
-
open/close a message catalog
catgets
-
get message from a message catalog
catopen
-
open/close a message catalog
poll.h
poll
-
wait for some event on a file descriptor
ppoll
-
wait for some event on a file descriptor
pthread.h
pthread_attr_destroy
-
initialize and destroy thread attributes object
pthread_attr_getaffinity_np
-
set/get CPU affinity attribute in thread at...
pthread_attr_getdetachstate
-
set/get detach state attribute in thread at...
pthread_attr_getguardsize
-
set/get guard size attribute in thread attrib...
pthread_attr_getinheritsched
-
set/get inherit-scheduler attribute in thr...
pthread_attr_getschedparam
-
set/get scheduling parameter attributes in t...
pthread_attr_getschedpolicy
-
set/get scheduling policy attribute in thre...
pthread_attr_getscope
-
set/get contention scope attribute in thread attr...
pthread_attr_getsigmask_np
-
set/get signal mask attribute in thread attr...
pthread_attr_getstack
-
set/get stack attributes in thread attributes object
pthread_attr_getstackaddr
-
set/get stack address attribute in thread att...
pthread_attr_getstacksize
-
set/get stack size attribute in thread attrib...
pthread_attr_init
-
initialize and destroy thread attributes object
pthread_attr_setaffinity_np
-
set/get CPU affinity attribute in thread at...
pthread_attr_setdetachstate
-
set/get detach state attribute in thread at...
pthread_attr_setguardsize
-
set/get guard size attribute in thread attrib...
pthread_attr_setinheritsched
-
set/get inherit-scheduler attribute in thr...
pthread_attr_setschedparam
-
set/get scheduling parameter attributes in t...
pthread_attr_setschedpolicy
-
set/get scheduling policy attribute in thre...
pthread_attr_setscope
-
set/get contention scope attribute in thread attr...
pthread_attr_setsigmask_np
-
set/get signal mask attribute in thread attr...
pthread_attr_setstack
-
set/get stack attributes in thread attributes object
pthread_attr_setstackaddr
-
set/get stack address attribute in thread att...
pthread_attr_setstacksize
-
set/get stack size attribute in thread attrib...
pthread_cancel
-
send a cancelation request to a thread
pthread_cleanup_pop
-
push and pop thread cancelation clean-up handlers
pthread_cleanup_pop_restore_np
-
push and pop thread cancelation clean-up...
pthread_cleanup_push
-
push and pop thread cancelation clean-up handlers
pthread_cleanup_push_defer_np
-
push and pop thread cancelation clean-up ...
pthread_create
-
create a new thread
pthread_detach
-
detach a thread
pthread_equal
-
compare thread IDs
pthread_exit
-
terminate calling thread
pthread_getaffinity_np
-
set/get CPU affinity of a thread
pthread_getattr_default_np
-
get or set default thread-creation attributes
pthread_getattr_np
-
get attributes of created thread
pthread_getconcurrency
-
set/get the concurrency level
pthread_getcpuclockid
-
retrieve ID of a thread's CPU time clock
pthread_getname_np
-
set/get the name of a thread
pthread_getschedparam
-
set/get scheduling policy and parameters of a thread
pthread_join
-
join with a terminated thread
pthread_kill_other_threads_np
-
terminate all other threads in process
pthread_mutex_consistent
-
make a robust mutex consistent
pthread_mutex_consistent_np
-
make a robust mutex consistent
pthread_mutexattr_getpshared
-
get/set process-shared mutex attribute
pthread_mutexattr_getrobust
-
get and set the robustness attribute of a m...
pthread_mutexattr_getrobust_np
-
get and set the robustness attribute of ...
pthread_mutexattr_setpshared
-
get/set process-shared mutex attribute
pthread_mutexattr_setrobust
-
get and set the robustness attribute of a m...
pthread_mutexattr_setrobust_np
-
get and set the robustness attribute of ...
pthread_rwlockattr_getkind_np
-
set/get the read-write lock kind of the t...
pthread_rwlockattr_setkind_np
-
set/get the read-write lock kind of the t...
pthread_self
-
obtain ID of the calling thread
pthread_setaffinity_np
-
set/get CPU affinity of a thread
pthread_setattr_default_np
-
get or set default thread-creation attributes
pthread_setcancelstate
-
set cancelability state and type
pthread_setcanceltype
-
set cancelability state and type
pthread_setconcurrency
-
set/get the concurrency level
pthread_setname_np
-
set/get the name of a thread
pthread_setschedparam
-
set/get scheduling policy and parameters of a thread
pthread_setschedprio
-
set scheduling priority of a thread
pthread_spin_destroy
-
initialize or destroy a spin lock
pthread_spin_init
-
initialize or destroy a spin lock
pthread_spin_lock
-
lock and unlock a spin lock
pthread_spin_trylock
-
lock and unlock a spin lock
pthread_spin_unlock
-
lock and unlock a spin lock
pthread_testcancel
-
request delivery of any pending cancelation request
pthread_timedjoin_np
-
try to join with a terminated thread
pthread_tryjoin_np
-
try to join with a terminated thread
pthread_yield
-
yield the processor
pwd.h
fgetpwent_r
-
get passwd file entry reentrantly
getpwent_r
-
get passwd file entry reentrantly
regex.h
regcomp
-
POSIX regex functions
regerror
-
POSIX regex functions
regex
-
POSIX regex functions
regexec
-
POSIX regex functions
regfree
-
POSIX regex functions
sched.h
__clone2
-
create a child process
clone
-
create a child process
clone2
-
create a child process
clone3
-
create a child process
CPU_ALLOC
-
macros for manipulating CPU sets
CPU_ALLOC_SIZE
-
macros for manipulating CPU sets
CPU_AND
-
macros for manipulating CPU sets
CPU_AND_S
-
macros for manipulating CPU sets
CPU_CLR
-
macros for manipulating CPU sets
CPU_CLR_S
-
macros for manipulating CPU sets
CPU_COUNT
-
macros for manipulating CPU sets
CPU_COUNT_S
-
macros for manipulating CPU sets
CPU_EQUAL
-
macros for manipulating CPU sets
CPU_EQUAL_S
-
macros for manipulating CPU sets
CPU_FREE
-
macros for manipulating CPU sets
CPU_ISSET
-
macros for manipulating CPU sets
CPU_ISSET_S
-
macros for manipulating CPU sets
CPU_OR
-
macros for manipulating CPU sets
CPU_OR_S
-
macros for manipulating CPU sets
CPU_SET
-
macros for manipulating CPU sets
CPU_SET_S
-
macros for manipulating CPU sets
CPU_XOR
-
macros for manipulating CPU sets
CPU_XOR_S
-
macros for manipulating CPU sets
CPU_ZERO
-
macros for manipulating CPU sets
CPU_ZERO_S
-
macros for manipulating CPU sets
getcpu
-
determine CPU and NUMA node on which the calling threa...
sched_get_priority_max
-
get static priority range
sched_get_priority_min
-
get static priority range
sched_getaffinity
-
set and get a thread's CPU affinity mask
sched_getcpu
-
determine CPU on which the calling thread is running
sched_getparam
-
set and get scheduling parameters
sched_getscheduler
-
set and get scheduling policy/parameters
sched_rr_get_interval
-
get the SCHED_RR interval for the named process
sched_setaffinity
-
set and get a thread's CPU affinity mask
sched_setparam
-
set and get scheduling parameters
sched_setscheduler
-
set and get scheduling policy/parameters
sched_yield
-
yield the processor
setns
-
reassociate thread with a namespace
unshare
-
disassociate parts of the process execution context
search.h
hcreate
-
hash table management
hcreate_r
-
hash table management
hdestroy
-
hash table management
hdestroy_r
-
hash table management
hsearch
-
hash table management
hsearch_r
-
hash table management
insque
-
insert/remove an item from a queue
lfind
-
linear search of an array
lsearch
-
linear search of an array
remque
-
insert/remove an item from a queue
tdelete
-
manage a binary search tree
tdestroy
-
manage a binary search tree
tfind
-
manage a binary search tree
tsearch
-
manage a binary search tree
twalk
-
manage a binary search tree
twalk_r
-
manage a binary search tree
semaphore.h
sem_close
-
close a named semaphore
sem_destroy
-
destroy an unnamed semaphore
sem_getvalue
-
get the value of a semaphore
sem_init
-
initialize an unnamed semaphore
sem_open
-
initialize and open a named semaphore
sem_post
-
unlock a semaphore
sem_timedwait
-
lock a semaphore
sem_trywait
-
lock a semaphore
sem_unlink
-
remove a named semaphore
sem_wait
-
lock a semaphore
setjmp.h
longjmp
-
performing a nonlocal goto
setjmp
-
performing a nonlocal goto
siglongjmp
-
performing a nonlocal goto
sigsetjmp
-
performing a nonlocal goto
signal.h
bsd_signal
-
signal handling with BSD semantics
gsignal
-
software signal facility
kill
-
send signal to a process
killpg
-
send signal to a process group
psiginfo
-
print signal description
psignal
-
print signal description
pthread_kill
-
send a signal to a thread
pthread_sigmask
-
examine and change mask of blocked signals
pthread_sigqueue
-
queue a signal and data to a thread
raise
-
send a signal to the caller
rt_sigaction
-
examine and change a signal action
rt_sigpending
-
examine pending signals
rt_sigprocmask
-
examine and change blocked signals
rt_sigsuspend
-
wait for a signal
rt_sigtimedwait
-
synchronously wait for queued signals
sigaction
-
examine and change a signal action
sigaddset
-
POSIX signal set operations
sigaltstack
-
set and/or get signal stack context
sigandset
-
POSIX signal set operations
sigblock
-
BSD signal API
sigdelset
-
POSIX signal set operations
sigemptyset
-
POSIX signal set operations
sigfillset
-
POSIX signal set operations
siggetmask
-
BSD signal API
sighold
-
System V signal API
sigignore
-
System V signal API
siginterrupt
-
allow signals to interrupt system calls
sigisemptyset
-
POSIX signal set operations
sigismember
-
POSIX signal set operations
sigmask
-
BSD signal API
signal
-
ANSI C signal handling
sigorset
-
POSIX signal set operations
sigpause
-
atomically release blocked signals and wait for interrupt
sigpending
-
examine pending signals
sigprocmask
-
examine and change blocked signals
sigqueue
-
queue a signal and data to a process
sigrelse
-
System V signal API
sigset
-
System V signal API
sigsetmask
-
BSD signal API
sigsetops
-
POSIX signal set operations
sigstack
-
set and/or get signal stack context
sigsuspend
-
wait for a signal
sigtimedwait
-
synchronously wait for queued signals
sigvec
-
BSD signal API
sigwait
-
wait for a signal
sigwaitinfo
-
synchronously wait for queued signals
ssignal
-
software signal facility
sysv_signal
-
signal handling with System V semantics
spawn.h
posix_spawn
-
spawn a process
posix_spawnp
-
spawn a process
stdarg.h
stdarg
-
variable argument lists
va_arg
-
variable argument lists
va_copy
-
variable argument lists
va_end
-
variable argument lists
va_start
-
variable argument lists
stddef.h
offsetof
-
offset of a structure member
wcstoimax
-
convert wide-character string to integer
wcstoumax
-
convert wide-character string to integer
stdio.h
__fbufsize
-
interfaces to stdio FILE structure
__flbf
-
interfaces to stdio FILE structure
__fpending
-
interfaces to stdio FILE structure
__fpurge
-
purge a stream
__freadable
-
interfaces to stdio FILE structure
__freading
-
interfaces to stdio FILE structure
__fsetlocking
-
interfaces to stdio FILE structure
__fwritable
-
interfaces to stdio FILE structure
__fwriting
-
interfaces to stdio FILE structure
_flushlbf
-
interfaces to stdio FILE structure
addmntent
-
get filesystem descriptor file entry
asprintf
-
print to allocated string
clearerr
-
check and reset stream status
clearerr_unlocked
-
nonlocking stdio functions
ctermid
-
get controlling terminal name
dprintf
-
formatted output conversion
endmntent
-
get filesystem descriptor file entry
fclose
-
close a stream
close a file
fcloseall
-
close all open streams
fdopen
-
stream open functions
feof
-
check and reset stream status
feof_unlocked
-
nonlocking stdio functions
ferror
-
check and reset stream status
ferror_unlocked
-
nonlocking stdio functions
fflush
-
flush a stream
fflush_unlocked
-
nonlocking stdio functions
fgetc
-
input of characters and strings
fgetc_unlocked
-
nonlocking stdio functions
fgetgrent
-
get group file entry
fgetpos
-
reposition a stream
fgetpwent
-
get password file entry
fgets
-
input of characters and strings
fgets_unlocked
-
nonlocking stdio functions
fgetwc
-
read a wide character from a FILE stream
fgetwc_unlocked
-
nonlocking stdio functions
fgetws_unlocked
-
nonlocking stdio functions
fileno
-
obtain file descriptor of a stdio stream
fileno_unlocked
-
nonlocking stdio functions
flockfile
-
lock FILE for stdio
fmemopen
-
open memory as stream
fopen
-
stream open functions
open a file
fopencookie
-
open a custom stream
fprintf
-
formatted output conversion
print to a file
fpurge
-
purge a stream
fputc
-
output of characters and strings
fputc_unlocked
-
nonlocking stdio functions
fputs
-
output of characters and strings
fputs_unlocked
-
nonlocking stdio functions
fputwc
-
write a wide character to a FILE stream
fputwc_unlocked
-
nonlocking stdio functions
fputws_unlocked
-
nonlocking stdio functions
fread
-
binary stream input/output
read bytes from a file
fread_unlocked
-
nonlocking stdio functions
freopen
-
stream open functions
fscanf
-
input FILE format conversion
get input from a file
fseek
-
reposition a stream
fseeko
-
seek to or report file position
fsetpos
-
reposition a stream
ftell
-
reposition a stream
ftello
-
seek to or report file position
ftrylockfile
-
lock FILE for stdio
funlockfile
-
lock FILE for stdio
fwprintf
-
formatted wide-character output conversion
fwrite
-
binary stream input/output
write bytes to a file
fwrite_unlocked
-
nonlocking stdio functions
getc
-
input of characters and strings
getc_unlocked
-
nonlocking stdio functions
getchar
-
input of characters and strings
getchar_unlocked
-
nonlocking stdio functions
getdelim
-
delimited string input
getline
-
delimited string input
getmntent
-
get filesystem descriptor file entry
getmntent_r
-
get filesystem descriptor file entry
gets
-
get a string from standard input (DEPRECATED)
getw
-
input and output of words (ints)
getwc
-
read a wide character from a FILE stream
getwc_unlocked
-
nonlocking stdio functions
getwchar_unlocked
-
nonlocking stdio functions
hasmntopt
-
get filesystem descriptor file entry
open_memstream
-
open a dynamic memory buffer stream
open_wmemstream
-
open a dynamic memory buffer stream
pclose
-
pipe stream to or from a process
perror
-
print a system error message
popen
-
pipe stream to or from a process
printf
-
formatted output conversion
print to the screen
putc
-
output of characters and strings
putc_unlocked
-
nonlocking stdio functions
putchar
-
output of characters and strings
putchar_unlocked
-
nonlocking stdio functions
putpwent
-
write a password file entry
puts
-
output of characters and strings
putw
-
input and output of words (ints)
putwc
-
write a wide character to a FILE stream
putwc_unlocked
-
nonlocking stdio functions
putwchar_unlocked
-
nonlocking stdio functions
remove
-
remove a file or directory
rename
-
change the name or location of a file
renameat
-
change the name or location of a file
renameat2
-
change the name or location of a file
rewind
-
reposition a stream
scanf
-
input FILE format conversion
get input from a user
setbuf
-
stream buffering operations
setbuffer
-
stream buffering operations
setlinebuf
-
stream buffering operations
setmntent
-
get filesystem descriptor file entry
setvbuf
-
stream buffering operations
snprintf
-
formatted output conversion
sprintf
-
formatted output conversion
print to a string
sscanf
-
input string format conversion
stderr
-
standard I/O streams
stdin
-
standard I/O streams
stdio
-
standard input/output library functions
stdio_ext
-
interfaces to stdio FILE structure
stdout
-
standard I/O streams
swprintf
-
formatted wide-character output conversion
sys_errlist
-
print a system error message
sys_nerr
-
print a system error message
tempnam
-
create a name for a temporary file
tmpfile
-
create a temporary file
tmpnam
-
create a name for a temporary file
tmpnam_r
-
create a name for a temporary file
ungetc
-
input of characters and strings
unlocked_stdio
-
nonlocking stdio functions
vasprintf
-
print to allocated string
vdprintf
-
formatted output conversion
vfprintf
-
formatted output conversion
vfscanf
-
input FILE format conversion
vfwprintf
-
formatted wide-character output conversion
vprintf
-
formatted output conversion
vscanf
-
input FILE format conversion
vsnprintf
-
formatted output conversion
vsprintf
-
formatted output conversion
vsscanf
-
input string format conversion
vswprintf
-
formatted wide-character output conversion
vwprintf
-
formatted wide-character output conversion
wprintf
-
formatted wide-character output conversion
stdlib.h
a64l
-
convert between long and base-64
abort
-
cause abnormal process termination
abs
-
compute the absolute value of an integer
aligned_alloc
-
allocate aligned memory
arc4random
-
cryptographically-secure pseudorandom number generator
arc4random_buf
-
cryptographically-secure pseudorandom number generator
arc4random_uniform
-
cryptographically-secure pseudorandom number generator
atexit
-
register a function to be called at normal process ter...
atof
-
convert a string to a double
convert a
string
to a
float
atoi
-
convert a string to an integer
convert a
string
to an
int
atol
-
convert a string to an integer
convert a
string
to a
long
atoll
-
convert a string to an integer
atoq
-
convert a string to an integer
bsearch
-
binary search of a sorted array
calloc
-
allocate and free dynamic memory
canonicalize_file_name
-
return the canonicalized absolute pathname
cfree
-
free allocated memory
clearenv
-
clear the environment
div
-
compute quotient and remainder of an integer division
drand48
-
generate uniformly distributed pseudo-random numbers
drand48_r
-
generate uniformly distributed pseudo-random numbers r...
ecvt
-
convert a floating-point number to a string
ecvt_r
-
convert a floating-point number to a string
erand48
-
generate uniformly distributed pseudo-random numbers
erand48_r
-
generate uniformly distributed pseudo-random numbers r...
exit
-
cause normal process termination
fcvt
-
convert a floating-point number to a string
fcvt_r
-
convert a floating-point number to a string
free
-
allocate and free dynamic memory
free dynamically allocated memory
gcvt
-
convert a floating-point number to a string
getenv
-
get an environment variable
getloadavg
-
get system load averages
getpt
-
open a new pseudoterminal master
getsubopt
-
parse suboption arguments from a string
grantpt
-
grant access to the slave pseudoterminal
imaxabs
-
compute the absolute value of an integer
imaxdiv
-
compute quotient and remainder of an integer division
initstate
-
random number generator
initstate_r
-
reentrant random number generator
jrand48
-
generate uniformly distributed pseudo-random numbers
jrand48_r
-
generate uniformly distributed pseudo-random numbers r...
l64a
-
convert between long and base-64
labs
-
compute the absolute value of an integer
lcong48
-
generate uniformly distributed pseudo-random numbers
lcong48_r
-
generate uniformly distributed pseudo-random numbers r...
ldiv
-
compute quotient and remainder of an integer division
llabs
-
compute the absolute value of an integer
lldiv
-
compute quotient and remainder of an integer division
lrand48
-
generate uniformly distributed pseudo-random numbers
lrand48_r
-
generate uniformly distributed pseudo-random numbers r...
malloc
-
allocate and free dynamic memory
allocate memory dynamically
MB_CUR_MAX
-
maximum length of a multibyte character in the current...
mblen
-
determine number of bytes in next multibyte character
mbstowcs
-
convert a multibyte string to a wide-character string
mbtowc
-
convert a multibyte sequence to a wide character
memalign
-
allocate aligned memory
mkdtemp
-
create a unique temporary directory
mkostemp
-
create a unique temporary file
mkostemps
-
create a unique temporary file
mkstemp
-
create a unique temporary file
mkstemps
-
create a unique temporary file
mktemp
-
make a unique temporary filename
mrand48
-
generate uniformly distributed pseudo-random numbers
mrand48_r
-
generate uniformly distributed pseudo-random numbers r...
nrand48
-
generate uniformly distributed pseudo-random numbers
nrand48_r
-
generate uniformly distributed pseudo-random numbers r...
on_exit
-
register a function to be called at normal process ter...
posix_memalign
-
allocate aligned memory
posix_openpt
-
open a pseudoterminal device
ptsname
-
get the name of the slave pseudoterminal
ptsname_r
-
get the name of the slave pseudoterminal
putenv
-
change or add an environment variable
pvalloc
-
allocate aligned memory
qecvt
-
convert a floating-point number to a string
qecvt_r
-
convert a floating-point number to a string
qfcvt
-
convert a floating-point number to a string
qfcvt_r
-
convert a floating-point number to a string
qgcvt
-
convert a floating-point number to a string
qsort
-
sort an array
qsort_r
-
sort an array
rand
-
pseudo-random number generator
rand_r
-
pseudo-random number generator
random
-
random number generator
generate a pseudorandom number
random_r
-
reentrant random number generator
realloc
-
allocate and free dynamic memory
reallocate memory dynamically
reallocarray
-
allocate and free dynamic memory
rpmatch
-
determine if the answer to a question is affirmative o...
secure_getenv
-
get an environment variable
seed48
-
generate uniformly distributed pseudo-random numbers
seed48_r
-
generate uniformly distributed pseudo-random numbers r...
setenv
-
change or add an environment variable
setstate
-
random number generator
setstate_r
-
reentrant random number generator
srand
-
pseudo-random number generator
srand48
-
generate uniformly distributed pseudo-random numbers
srand48_r
-
generate uniformly distributed pseudo-random numbers r...
srandom
-
random number generator
seed pseudorandom number generation
srandom_r
-
reentrant random number generator
strfromd
-
convert a floating-point value into a string
strfromf
-
convert a floating-point value into a string
strfroml
-
convert a floating-point value into a string
strtod
-
convert ASCII string to floating-point number
strtof
-
convert ASCII string to floating-point number
strtol
-
convert a string to a long integer
strtold
-
convert ASCII string to floating-point number
strtoll
-
convert a string to a long integer
strtoq
-
convert a string to a long integer
strtoul
-
convert a string to an unsigned long integer
strtoull
-
convert a string to an unsigned long integer
strtouq
-
convert a string to an unsigned long integer
system
-
execute a shell command
unlockpt
-
unlock a pseudoterminal master/slave pair
unsetenv
-
change or add an environment variable
valloc
-
allocate aligned memory
wcstombs
-
convert a wide-character string to a multibyte string
wctomb
-
convert a wide character to a multibyte sequence
string.h
bstring
-
byte string operations
memccpy
-
copy memory area
memchr
-
scan memory for a character
memcmp
-
compare memory areas
memcpy
-
copy memory area
memfrob
-
frobnicate (obfuscate) a memory area
memmem
-
locate a substring
memmove
-
copy memory area
mempcpy
-
copy memory area
memrchr
-
scan memory for a character
memset
-
fill memory with a constant byte
rawmemchr
-
scan memory for a character
sigabbrev_np
-
return string describing signal
sigdescr_np
-
return string describing signal
stpcpy
-
copy or catenate a string
stpncpy
-
fill a fixed-size buffer with non-null bytes from a st...
strcasestr
-
locate a substring
locate a substring
strcat
-
copy or catenate a string
strchr
-
locate character in string
strchrnul
-
locate character in string
strcmp
-
compare two strings
compare two strings
strcoll
-
compare two strings using the current locale
strcpy
-
copy or catenate a string
copy a string
strcspn
-
get length of a prefix substring
strdup
-
duplicate a string
strdupa
-
duplicate a string
strerror
-
return string describing error number
strerror_l
-
return string describing error number
strerror_r
-
return string describing error number
strerrordesc_np
-
return string describing error number
strerrorname_np
-
return string describing error number
strfry
-
randomize a string
strlen
-
calculate the length of a string
calculate the length of a string
strncat
-
append non-null bytes from a source array to a string,...
strncmp
-
compare two strings
strncpy
-
fill a fixed-size buffer with non-null bytes from a st...
strndup
-
duplicate a string
strndupa
-
duplicate a string
strnlen
-
determine the length of a fixed-size string
strpbrk
-
search a string for any of a set of bytes
strrchr
-
locate character in string
strsep
-
extract token from string
strsignal
-
return string describing signal
strspn
-
get length of a prefix substring
strstr
-
locate a substring
locate a substring
strtok
-
extract tokens from strings
strtok_r
-
extract tokens from strings
strverscmp
-
compare two version strings
strxfrm
-
string transformation
sys_siglist
-
return string describing signal
wmempcpy
-
copy memory area
strings.h
bcmp
-
compare byte sequences
bcopy
-
copy byte sequence
bzero
-
zero a byte string
explicit_bzero
-
zero a byte string
ffs
-
find first bit set in a word
ffsl
-
find first bit set in a word
ffsll
-
find first bit set in a word
index
-
locate character in string
rindex
-
locate character in string
strcasecmp
-
compare two strings ignoring case
compare two strings ignoring case
string
-
string operations
strncasecmp
-
compare two strings ignoring case
sys/ipc.h
ftok
-
convert a pathname and a project identifier to a Syste...
sys/mman.h
madvise
-
give advice about use of memory
memfd_create
-
create an anonymous file
mincore
-
determine whether pages are resident in memory
mlock
-
lock and unlock memory
mlock2
-
lock and unlock memory
mlockall
-
lock and unlock memory
mmap
-
map or unmap files or devices into memory
mmap64
-
map or unmap files or devices into memory
mprotect
-
set protection on a region of memory
mremap
-
remap a virtual memory address
msync
-
synchronize a file with a memory map
munlock
-
lock and unlock memory
munlockall
-
lock and unlock memory
munmap
-
map or unmap files or devices into memory
pkey_alloc
-
allocate or free a protection key
pkey_free
-
allocate or free a protection key
pkey_mprotect
-
set protection on a region of memory
posix_madvise
-
give advice about patterns of memory usage
process_madvise
-
give advice about use of memory to a process
remap_file_pages
-
create a nonlinear file mapping
shm_open
-
create/open or unlink POSIX shared memory objects
shm_unlink
-
create/open or unlink POSIX shared memory objects
sys/msg.h
msgctl
-
System V message control operations
msgget
-
get a System V message queue identifier
msgop
-
System V message queue operations
msgrcv
-
System V message queue operations
msgsnd
-
System V message queue operations
sys/resource.h
getpriority
-
get/set program scheduling priority
getrlimit
-
get/set resource limits
getrusage
-
get resource usage
prlimit
-
get/set resource limits
prlimit64
-
get/set resource limits
setpriority
-
get/set program scheduling priority
setrlimit
-
get/set resource limits
ugetrlimit
-
get/set resource limits
vlimit
-
get/set resource limits
vtimes
-
get resource usage
sys/select.h
_newselect
-
synchronous I/O multiplexing
FD_CLR
-
synchronous I/O multiplexing
FD_ISSET
-
synchronous I/O multiplexing
FD_SET
-
synchronous I/O multiplexing
FD_ZERO
-
synchronous I/O multiplexing
pselect
-
synchronous I/O multiplexing
pselect6
-
synchronous I/O multiplexing
select
-
synchronous I/O multiplexing
sys/sem.h
semctl
-
System V semaphore control operations
semget
-
get a System V semaphore set identifier
semop
-
System V semaphore operations
semtimedop
-
System V semaphore operations
sys/shm.h
shmat
-
System V shared memory operations
shmctl
-
System V shared memory control
shmdt
-
System V shared memory operations
shmget
-
allocates a System V shared memory segment
shmop
-
System V shared memory operations
sys/socket.h
accept
-
accept a connection on a socket
accept4
-
accept a connection on a socket
address_families
-
socket address families (domains)
bind
-
bind a name to a socket
cmsg
-
access ancillary data
CMSG_ALIGN
-
access ancillary data
CMSG_DATA
-
access ancillary data
CMSG_FIRSTHDR
-
access ancillary data
CMSG_LEN
-
access ancillary data
CMSG_NXTHDR
-
access ancillary data
CMSG_SPACE
-
access ancillary data
connect
-
initiate a connection on a socket
ddp
-
Linux AppleTalk protocol implementation
getnameinfo
-
address-to-name translation in protocol-independent ma...
getpeername
-
get name of connected peer socket
getsockname
-
get socket name
getsockopt
-
get and set options on sockets
inet
-
Internet address manipulation routines
inet_addr
-
Internet address manipulation routines
inet_aton
-
Internet address manipulation routines
inet_lnaof
-
Internet address manipulation routines
inet_makeaddr
-
Internet address manipulation routines
inet_netof
-
Internet address manipulation routines
inet_network
-
Internet address manipulation routines
inet_ntoa
-
Internet address manipulation routines
ip
-
Linux IPv4 protocol implementation
ipv6
-
Linux IPv6 protocol implementation
listen
-
listen for connections on a socket
packet
-
packet interface on device level
raw
-
Linux IPv4 raw sockets
recv
-
receive a message from a socket
recvfrom
-
receive a message from a socket
recvmmsg
-
receive multiple messages on a socket
recvmsg
-
receive a message from a socket
send
-
send a message on a socket
sendmmsg
-
send multiple messages on a socket
sendmsg
-
send a message on a socket
sendto
-
send a message on a socket
setsockopt
-
get and set options on sockets
shutdown
-
shut down part of a full-duplex connection
sock_diag
-
obtaining information about sockets
sockatmark
-
determine whether socket is at out-of-band mark
socket
-
create an endpoint for communication
socket
-
Linux socket interface
socketpair
-
create a pair of connected sockets
tcp
-
TCP protocol
udp
-
User Datagram Protocol for IPv4
udplite
-
Lightweight User Datagram Protocol
unix
-
sockets for local interprocess communication
vsock
-
Linux VSOCK address family
x25
-
ITU-T X.25 / ISO/IEC 8208 protocol interface
sys/stat.h
chmod
-
change permissions of a file
fchmod
-
change permissions of a file
fchmodat
-
change permissions of a file
fstat
-
get file status
fstat64
-
get file status
fstatat
-
get file status
fstatat64
-
get file status
futimens
-
change file timestamps with nanosecond precision
isfdtype
-
test file type of a file descriptor
lstat
-
get file status
lstat64
-
get file status
mkdir
-
create a directory
mkdirat
-
create a directory
mknod
-
create a special or ordinary file
mknodat
-
create a special or ordinary file
newfstatat
-
get file status
oldfstat
-
get file status
oldlstat
-
get file status
oldstat
-
get file status
stat
-
get file status
stat64
-
get file status
statx
-
get file status (extended)
umask
-
set file mode creation mask
utimensat
-
change file timestamps with nanosecond precision
sys/statvfs.h
fstatvfs
-
get filesystem statistics
statvfs
-
get filesystem statistics
sys/time.h
adjtime
-
correct the time to synchronize the system clock
futimes
-
change file timestamps
futimesat
-
change timestamps of a file relative to a directory fi...
getitimer
-
get or set value of an interval timer
gettimeofday
-
get / set time
lutimes
-
change file timestamps
setitimer
-
get or set value of an interval timer
settimeofday
-
get / set time
timeradd
-
timeval operations
timerclear
-
timeval operations
timercmp
-
timeval operations
timerisset
-
timeval operations
timersub
-
timeval operations
TIMESPEC_TO_TIMEVAL
-
convert between time structures
TIMEVAL_TO_TIMESPEC
-
convert between time structures
sys/times.h
times
-
get process times
sys/types.h
bindresvport
-
bind a socket to a privileged IP port
closedir
-
close a directory
db
-
database access methods
dbopen
-
database access methods
dirfd
-
get directory stream file descriptor
endgrent
-
get group file entry
endpwent
-
get password file entry
fdopendir
-
open a directory
freeaddrinfo
-
network address and service translation
freehostent
-
get network hostnames and addresses
freeifaddrs
-
get interface addresses
fts
-
traverse a file hierarchy
fts_children
-
traverse a file hierarchy
fts_close
-
traverse a file hierarchy
fts_open
-
traverse a file hierarchy
fts_read
-
traverse a file hierarchy
fts_set
-
traverse a file hierarchy
gai_strerror
-
network address and service translation
getaddrinfo
-
network address and service translation
getgrent
-
get group file entry
getgrgid
-
get group file entry
getgrgid_r
-
get group file entry
getgrnam
-
get group file entry
getgrnam_r
-
get group file entry
getifaddrs
-
get interface addresses
getipnodebyaddr
-
get network hostnames and addresses
getipnodebyname
-
get network hostnames and addresses
getpw
-
reconstruct password line entry
getpwent
-
get password file entry
getpwnam
-
get password file entry
getpwnam_r
-
get password file entry
getpwuid
-
get password file entry
getpwuid_r
-
get password file entry
initgroups
-
initialize the supplementary group access list
lseek64
-
reposition 64-bit read/write file offset
mkfifo
-
make a FIFO special file (a named pipe)
mkfifoat
-
make a FIFO special file (a named pipe)
opendir
-
open a directory
re_comp
-
BSD regex functions
re_exec
-
BSD regex functions
rewinddir
-
reset directory stream
setgrent
-
get group file entry
setpwent
-
get password file entry
ustat
-
get filesystem statistics
sys/uio.h
preadv
-
read or write data into multiple buffers
preadv2
-
read or write data into multiple buffers
process_vm_readv
-
transfer data between process address spaces
process_vm_writev
-
transfer data between process address spaces
pwritev
-
read or write data into multiple buffers
pwritev2
-
read or write data into multiple buffers
readv
-
read or write data into multiple buffers
writev
-
read or write data into multiple buffers
sys/utsname.h
oldolduname
-
get name and information about current kernel
olduname
-
get name and information about current kernel
uname
-
get name and information about current kernel
sys/wait.h
wait
-
wait for process to change state
wait3
-
wait for process to change state, BSD style
wait4
-
wait for process to change state, BSD style
waitid
-
wait for process to change state
waitpid
-
wait for process to change state
syslog.h
closelog
-
send messages to the system logger
openlog
-
send messages to the system logger
setlogmask
-
set log priority mask
syslog
-
send messages to the system logger
vsyslog
-
send messages to the system logger
termios.h
cfgetispeed
-
get and set terminal attributes, line control, get and...
cfgetospeed
-
get and set terminal attributes, line control, get and...
cfmakeraw
-
get and set terminal attributes, line control, get and...
cfsetispeed
-
get and set terminal attributes, line control, get and...
cfsetospeed
-
get and set terminal attributes, line control, get and...
cfsetspeed
-
get and set terminal attributes, line control, get and...
tcdrain
-
get and set terminal attributes, line control, get and...
tcflow
-
get and set terminal attributes, line control, get and...
tcflush
-
get and set terminal attributes, line control, get and...
tcgetattr
-
get and set terminal attributes, line control, get and...
tcgetsid
-
get session ID
tcsendbreak
-
get and set terminal attributes, line control, get and...
tcsetattr
-
get and set terminal attributes, line control, get and...
termios
-
get and set terminal attributes, line control, get and...
time.h
asctime
-
transform date and time to broken-down time or ASCII
asctime_r
-
transform date and time to broken-down time or ASCII
clock
-
determine processor time
clock_getcpuclockid
-
obtain ID of a process CPU-time clock
clock_getres
-
clock and time functions
clock_gettime
-
clock and time functions
clock_nanosleep
-
high-resolution sleep with specifiable clock
clock_settime
-
clock and time functions
ctime
-
transform date and time to broken-down time or ASCII
ctime_r
-
transform date and time to broken-down time or ASCII
daylight
-
initialize time conversion information
difftime
-
calculate time difference
dysize
-
get number of days for a given year
getdate
-
convert a date-plus-time string to broken-down time
getdate_err
-
convert a date-plus-time string to broken-down time
getdate_r
-
convert a date-plus-time string to broken-down time
gmtime
-
transform date and time to broken-down time or ASCII
gmtime_r
-
transform date and time to broken-down time or ASCII
localtime
-
transform date and time to broken-down time or ASCII
localtime_r
-
transform date and time to broken-down time or ASCII
mktime
-
transform date and time to broken-down time or ASCII
nanosleep
-
high-resolution sleep
stime
-
set time
strftime
-
format date and time
strftime_l
-
format date and time
strptime
-
convert a string representation of time to a time tm s...
time
-
get time in seconds
get time in seconds
timegm
-
inverses of gmtime and localtime
timelocal
-
inverses of gmtime and localtime
timer_create
-
create a POSIX per-process timer
timer_delete
-
delete a POSIX per-process timer
timer_getoverrun
-
get overrun count for a POSIX per-process timer
timer_gettime
-
arm/disarm and fetch state of POSIX per-process timer
timer_settime
-
arm/disarm and fetch state of POSIX per-process timer
timezone
-
initialize time conversion information
tzname
-
initialize time conversion information
tzset
-
initialize time conversion information
ulimit.h
ulimit
-
get and set user limits
unistd.h
_Exit
-
terminate the calling process
_exit
-
terminate the calling process
_llseek
-
reposition read/write file offset
_sysctl
-
read/write system parameters
access
-
check user's permissions for a file
acct
-
switch process accounting on or off
alarm
-
set an alarm clock for delivery of a signal
arch_prctl
-
set architecture-specific thread state
brk
-
change data segment size
capget
-
set/get capabilities of thread(s)
capset
-
set/get capabilities of thread(s)
chdir
-
change working directory
chown
-
change ownership of a file
chown32
-
change ownership of a file
chroot
-
change root directory
close
-
close a file descriptor
close_range
-
close all file descriptors in a given range
confstr
-
get configuration dependent string variables
copy_file_range
-
Copy a range of data from one file to another
cuserid
-
get username
daemon
-
run in the background
delete_module
-
unload a kernel module
dup
-
duplicate a file descriptor
dup2
-
duplicate a file descriptor
dup3
-
duplicate a file descriptor
eaccess
-
check effective user's permissions for a file
encrypt
-
encrypt 64-bit messages
encrypt_r
-
encrypt 64-bit messages
endusershell
-
get permitted user shells
euidaccess
-
check effective user's permissions for a file
exec
-
execute a file
execl
-
execute a file
execle
-
execute a file
execlp
-
execute a file
execv
-
execute a file
execve
-
execute program
execveat
-
execute program relative to a directory file descriptor
execvp
-
execute a file
execvpe
-
execute a file
exit
-
terminate the calling process
exit_group
-
exit all threads in a process
faccessat
-
check user's permissions for a file
faccessat2
-
check user's permissions for a file
fchdir
-
change working directory
fchown
-
change ownership of a file
fchown32
-
change ownership of a file
fchownat
-
change ownership of a file
fdatasync
-
synchronize a file's in-core state with storage device
fexecve
-
execute program specified via file descriptor
finit_module
-
load a kernel module
fork
-
create a child process
fpathconf
-
get configuration values for files
fsync
-
synchronize a file's in-core state with storage device
ftruncate
-
truncate a file to a specified length
ftruncate64
-
truncate a file to a specified length
futex
-
fast user-space locking
get_current_dir_name
-
get current working directory
get_robust_list
-
get/set list of robust futexes
get_thread_area
-
manipulate thread-local storage information
getcwd
-
get current working directory
getcwd
-
get current working directory
getdents
-
get directory entries
getdents64
-
get directory entries
getdomainname
-
get/set NIS domain name
getdtablesize
-
get file descriptor table size
getegid
-
get group identity
getegid32
-
get group identity
getentropy
-
fill a buffer with random bytes
geteuid
-
get user identity
geteuid32
-
get user identity
getgid
-
get group identity
getgid32
-
get group identity
getgroups
-
get/set list of supplementary group IDs
getgroups32
-
get/set list of supplementary group IDs
gethostid
-
get or set the unique identifier of the current host
gethostname
-
get/set hostname
getlogin
-
get username
getlogin_r
-
get username
getopt
-
Parse command-line options
getopt_long
-
Parse command-line options
getopt_long_only
-
Parse command-line options
getpagesize
-
get memory page size
getpass
-
get a password
getpgid
-
set/get process group
getpgrp
-
set/get process group
getpid
-
get process identification
getppid
-
get process identification
getresgid
-
get real, effective, and saved user/group IDs
getresgid32
-
get real, effective, and saved user/group IDs
getresuid
-
get real, effective, and saved user/group IDs
getresuid32
-
get real, effective, and saved user/group IDs
getsid
-
get session ID
gettid
-
get thread identification
getuid
-
get user identity
getuid32
-
get user identity
getusershell
-
get permitted user shells
getwd
-
get current working directory
group_member
-
test whether a process is in a group
idle
-
make process 0 idle
init_module
-
load a kernel module
io_cancel
-
cancel an outstanding asynchronous I/O operation
io_destroy
-
destroy an asynchronous I/O context
io_getevents
-
read asynchronous I/O events from the completion queue
ioprio_get
-
get/set I/O scheduling class and priority
ioprio_set
-
get/set I/O scheduling class and priority
ipc
-
System V IPC system calls
isatty
-
test whether a file descriptor refers to a terminal
kcmp
-
compare two processes to determine if they share a ker...
kexec_file_load
-
load a new kernel for later execution
kexec_load
-
load a new kernel for later execution
keyctl
-
manipulate the kernel's key management facility
klogctl
-
read and/or clear kernel message ring buffer; set cons...
lchown
-
change ownership of a file
lchown32
-
change ownership of a file
link
-
make a new name for a file
linkat
-
make a new name for a file
llseek
-
reposition read/write file offset
lockf
-
apply, test or remove a POSIX lock on an open file
lookup_dcookie
-
return a directory entry's path
lseek
-
reposition read/write file offset
membarrier
-
issue memory barriers on a set of threads
memfd_secret
-
create an anonymous RAM-based file to access secret me...
mmap2
-
map files or devices into memory
modify_ldt
-
get or set a per-process LDT entry
mount_setattr
-
change properties of a mount or mount tree
mq_getsetattr
-
get/set message queue attributes
nice
-
change process priority
openat2
-
open and possibly create a file (extended)
optarg
-
Parse command-line options
opterr
-
Parse command-line options
optind
-
Parse command-line options
optopt
-
Parse command-line options
pathconf
-
get configuration values for files
pause
-
wait for signal
perf_event_open
-
set up performance monitoring
pidfd_getfd
-
obtain a duplicate of another process's file descriptor
pidfd_open
-
obtain a file descriptor that refers to a process
pidfd_send_signal
-
send a signal to a process specified by a file descri...
pipe
-
create pipe
pipe2
-
create pipe
pivot_root
-
change the root mount
pread
-
read from or write to a file descriptor at a given offset
pread64
-
read from or write to a file descriptor at a given offset
profil
-
execution time profile
pwrite
-
read from or write to a file descriptor at a given offset
pwrite64
-
read from or write to a file descriptor at a given offset
read
-
read from a file descriptor
readdir
-
read directory entry
readlink
-
read value of a symbolic link
readlinkat
-
read value of a symbolic link
reboot
-
reboot or enable/disable Ctrl-Alt-Del
rmdir
-
delete a directory
rt_sigqueueinfo
-
queue a signal and data
rt_tgsigqueueinfo
-
queue a signal and data
s390_guarded_storage
-
operations with z/Architecture guarded storage fac...
s390_pci_mmio_read
-
transfer data to/from PCI MMIO memory page
s390_pci_mmio_write
-
transfer data to/from PCI MMIO memory page
s390_runtime_instr
-
enable/disable s390 CPU run-time instrumentation
s390_sthyi
-
emulate STHYI instruction
sbrk
-
change data segment size
sched_getattr
-
set and get scheduling policy and attributes
sched_setattr
-
set and get scheduling policy and attributes
seccomp
-
operate on Secure Computing state of the process
set_robust_list
-
get/set list of robust futexes
set_thread_area
-
manipulate thread-local storage information
set_tid_address
-
set pointer to thread ID
setdomainname
-
get/set NIS domain name
setegid
-
set effective user or group ID
seteuid
-
set effective user or group ID
setgid
-
set group identity
setgid32
-
set group identity
setgroups
-
get/set list of supplementary group IDs
setgroups32
-
get/set list of supplementary group IDs
sethostid
-
get or set the unique identifier of the current host
sethostname
-
get/set hostname
setkey
-
encrypt 64-bit messages
setkey_r
-
encrypt 64-bit messages
setpgid
-
set/get process group
setpgrp
-
set/get process group
setregid
-
set real and/or effective user or group ID
setregid32
-
set real and/or effective user or group ID
setresgid
-
set real, effective, and saved user or group ID
setresgid32
-
set real, effective, and saved user or group ID
setresuid
-
set real, effective, and saved user or group ID
setresuid32
-
set real, effective, and saved user or group ID
setreuid
-
set real and/or effective user or group ID
setreuid32
-
set real and/or effective user or group ID
setsid
-
creates a session and sets the process group ID
setuid
-
set user identity
setuid32
-
set user identity
setup
-
setup devices and filesystems, mount root filesystem
setusershell
-
get permitted user shells
sgetmask
-
manipulation of signal mask (obsolete)
sleep
-
sleep for a specified number of seconds
socketcall
-
socket system calls
spu_create
-
create a new spu context
spu_run
-
execute an SPU context
ssetmask
-
manipulation of signal mask (obsolete)
subpage_prot
-
define a subpage protection for an address range
swab
-
swap adjacent bytes
symlink
-
make a new name for a file
symlinkat
-
make a new name for a file
sync
-
commit filesystem caches to disk
syncfs
-
commit filesystem caches to disk
syscall
-
indirect system call
sysconf
-
get configuration information at run time
sysctl
-
read/write system parameters
syslog
-
read and/or clear kernel message ring buffer; set cons...
tcgetpgrp
-
get and set terminal foreground process group
tcsetpgrp
-
get and set terminal foreground process group
tgkill
-
send a signal to a thread
tkill
-
send a signal to a thread
truncate
-
truncate a file to a specified length
truncate64
-
truncate a file to a specified length
ttyname
-
return name of a terminal
ttyname_r
-
return name of a terminal
ualarm
-
schedule signal after given number of microseconds
unlink
-
delete a name and possibly the file it refers to
unlinkat
-
delete a name and possibly the file it refers to
uselib
-
load shared library
userfaultfd
-
create a file descriptor for handling page faults in u...
usleep
-
suspend execution for microsecond intervals
vfork
-
create a child process and block parent
vhangup
-
virtually hangup the current terminal
write
-
write to a file descriptor
utime.h
utime
-
change file last access and modification times
utimes
-
change file last access and modification times
utmpx.h
getutmp
-
copy utmp structure to utmpx, and vice versa
getutmpx
-
copy utmp structure to utmpx, and vice versa
wchar.h
btowc
-
convert single byte to wide character
fgetws
-
read a wide-character string from a FILE stream
fputws
-
write a wide-character string to a FILE stream
fwide
-
set and determine the orientation of a FILE stream
getwchar
-
read a wide character from standard input
mbrlen
-
determine number of bytes in next multibyte character
mbrtowc
-
convert a multibyte sequence to a wide character
mbsinit
-
test for initial shift state
mbsnrtowcs
-
convert a multibyte string to a wide-character string
mbsrtowcs
-
convert a multibyte string to a wide-character string ...
putwchar
-
write a wide character to standard output
ungetwc
-
push back a wide character onto a FILE stream
wcpcpy
-
copy a wide-character string, returning a pointer to i...
wcpncpy
-
copy a fixed-size string of wide characters, returning...
wcrtomb
-
convert a wide character to a multibyte sequence
wcscasecmp
-
compare two wide-character strings, ignoring case
wcscat
-
concatenate two wide-character strings
wcschr
-
search a wide character in a wide-character string
wcscmp
-
compare two wide-character strings
wcscpy
-
copy a wide-character string
wcscspn
-
search a wide-character string for any of a set of wid...
wcsdup
-
duplicate a wide-character string
wcslen
-
determine the length of a wide-character string
wcsncasecmp
-
compare two fixed-size wide-character strings, ignorin...
wcsncat
-
concatenate two wide-character strings
wcsncmp
-
compare two fixed-size wide-character strings
wcsncpy
-
copy a fixed-size string of wide characters
wcsnlen
-
determine the length of a fixed-size wide-character st...
wcsnrtombs
-
convert a wide-character string to a multibyte string
wcspbrk
-
search a wide-character string for any of a set of wid...
wcsrchr
-
search a wide character in a wide-character string
wcsrtombs
-
convert a wide-character string to a multibyte string
wcsspn
-
get length of a prefix wide-character substring
wcsstr
-
locate a substring in a wide-character string
wcstok
-
split wide-character string into tokens
wcswidth
-
determine columns needed for a fixed-size wide-charact...
wctob
-
try to represent a wide character as a single byte
wcwidth
-
determine columns needed for a wide character
wmemchr
-
search a wide character in a wide-character array
wmemcmp
-
compare two arrays of wide-characters
wmemcpy
-
copy an array of wide-characters
wmemmove
-
copy an array of wide-characters
wmemset
-
fill an array of wide-characters with a constant wide ...
wctype.h
iswalnum
-
test for alphanumeric wide character
iswalpha
-
test for alphabetic wide character
iswblank
-
test for whitespace wide character
iswcntrl
-
test for control wide character
iswctype
-
wide-character classification
iswdigit
-
test for decimal digit wide character
iswgraph
-
test for graphic wide character
iswlower
-
test for lowercase wide character
iswprint
-
test for printing wide character
iswpunct
-
test for punctuation or symbolic wide character
iswspace
-
test for whitespace wide character
iswupper
-
test for uppercase wide character
iswxdigit
-
test for hexadecimal digit wide character
towctrans
-
wide-character transliteration
towlower
-
convert a wide character to lowercase
towlower_l
-
convert a wide character to lowercase
towupper
-
convert a wide character to uppercase
towupper_l
-
convert a wide character to uppercase
wctrans
-
wide-character translation mapping
wctype
-
wide-character classification
wordexp.h
wordexp
-
perform word expansion like a posix-shell
wordfree
-
perform word expansion like a posix-shell |
| Markdown | [CS50 Manual Pages](https://manual.cs50.io/)
Manual pages for the C standard library, the C POSIX library, and the CS50 Library for [those less comfortable]().
# [aio.h](https://manual.cs50.io/#aio.h)
- [aio\_cancel](https://manual.cs50.io/3/aio_cancel) - cancel an outstanding asynchronous I/O request
- [aio\_error](https://manual.cs50.io/3/aio_error) - get error status of asynchronous I/O operation
- [aio\_fsync](https://manual.cs50.io/3/aio_fsync) - asynchronous file synchronization
- [aio\_init](https://manual.cs50.io/3/aio_init) - asynchronous I/O initialization
- [aio\_read](https://manual.cs50.io/3/aio_read) - asynchronous read
- [aio\_return](https://manual.cs50.io/3/aio_return) - get return status of asynchronous I/O operation
- [aio\_suspend](https://manual.cs50.io/3/aio_suspend) - wait for asynchronous I/O operation or timeout
- [aio\_write](https://manual.cs50.io/3/aio_write) - asynchronous write
- [lio\_listio](https://manual.cs50.io/3/lio_listio) - initiate a list of I/O requests
# [arpa/inet.h](https://manual.cs50.io/#arpa/inet.h)
- [byteorder](https://manual.cs50.io/3/byteorder) - convert values between host and network byte order
- [htonl](https://manual.cs50.io/3/htonl) - convert values between host and network byte order
- [htons](https://manual.cs50.io/3/htons) - convert values between host and network byte order
- [inet\_net\_ntop](https://manual.cs50.io/3/inet_net_ntop) - Internet network number conversion
- [inet\_net\_pton](https://manual.cs50.io/3/inet_net_pton) - Internet network number conversion
- [inet\_ntop](https://manual.cs50.io/3/inet_ntop) - convert IPv4 and IPv6 addresses from binary to text form
- [inet\_pton](https://manual.cs50.io/3/inet_pton) - convert IPv4 and IPv6 addresses from text to binary form
- [ntohl](https://manual.cs50.io/3/ntohl) - convert values between host and network byte order
- [ntohs](https://manual.cs50.io/3/ntohs) - convert values between host and network byte order
# [assert.h](https://manual.cs50.io/#assert.h)
- [\_Static\_assert](https://manual.cs50.io/3/_Static_assert) - fail compilation if assertion is false
- [assert](https://manual.cs50.io/3/assert) - abort the program if assertion is false
- [assert\_perror](https://manual.cs50.io/3/assert_perror) - test errnum and abort
- [static\_assert](https://manual.cs50.io/3/static_assert) - fail compilation if assertion is false
# [complex.h](https://manual.cs50.io/#complex.h)
- [cabs](https://manual.cs50.io/3/cabs) - absolute value of a complex number
- [cabsf](https://manual.cs50.io/3/cabsf) - absolute value of a complex number
- [cabsl](https://manual.cs50.io/3/cabsl) - absolute value of a complex number
- [cacos](https://manual.cs50.io/3/cacos) - complex arc cosine
- [cacosf](https://manual.cs50.io/3/cacosf) - complex arc cosine
- [cacosh](https://manual.cs50.io/3/cacosh) - complex arc hyperbolic cosine
- [cacoshf](https://manual.cs50.io/3/cacoshf) - complex arc hyperbolic cosine
- [cacoshl](https://manual.cs50.io/3/cacoshl) - complex arc hyperbolic cosine
- [cacosl](https://manual.cs50.io/3/cacosl) - complex arc cosine
- [carg](https://manual.cs50.io/3/carg) - calculate the complex argument
- [cargf](https://manual.cs50.io/3/cargf) - calculate the complex argument
- [cargl](https://manual.cs50.io/3/cargl) - calculate the complex argument
- [casin](https://manual.cs50.io/3/casin) - complex arc sine
- [casinf](https://manual.cs50.io/3/casinf) - complex arc sine
- [casinh](https://manual.cs50.io/3/casinh) - complex arc sine hyperbolic
- [casinhf](https://manual.cs50.io/3/casinhf) - complex arc sine hyperbolic
- [casinhl](https://manual.cs50.io/3/casinhl) - complex arc sine hyperbolic
- [casinl](https://manual.cs50.io/3/casinl) - complex arc sine
- [catan](https://manual.cs50.io/3/catan) - complex arc tangents
- [catanf](https://manual.cs50.io/3/catanf) - complex arc tangents
- [catanh](https://manual.cs50.io/3/catanh) - complex arc tangents hyperbolic
- [catanhf](https://manual.cs50.io/3/catanhf) - complex arc tangents hyperbolic
- [catanhl](https://manual.cs50.io/3/catanhl) - complex arc tangents hyperbolic
- [catanl](https://manual.cs50.io/3/catanl) - complex arc tangents
- [ccos](https://manual.cs50.io/3/ccos) - complex cosine function
- [ccosf](https://manual.cs50.io/3/ccosf) - complex cosine function
- [ccosh](https://manual.cs50.io/3/ccosh) - complex hyperbolic cosine
- [ccoshf](https://manual.cs50.io/3/ccoshf) - complex hyperbolic cosine
- [ccoshl](https://manual.cs50.io/3/ccoshl) - complex hyperbolic cosine
- [ccosl](https://manual.cs50.io/3/ccosl) - complex cosine function
- [cexp](https://manual.cs50.io/3/cexp) - complex exponential function
- [cexp2](https://manual.cs50.io/3/cexp2) - base-2 exponent of a complex number
- [cexp2f](https://manual.cs50.io/3/cexp2f) - base-2 exponent of a complex number
- [cexp2l](https://manual.cs50.io/3/cexp2l) - base-2 exponent of a complex number
- [cexpf](https://manual.cs50.io/3/cexpf) - complex exponential function
- [cexpl](https://manual.cs50.io/3/cexpl) - complex exponential function
- [cimag](https://manual.cs50.io/3/cimag) - get imaginary part of a complex number
- [cimagf](https://manual.cs50.io/3/cimagf) - get imaginary part of a complex number
- [cimagl](https://manual.cs50.io/3/cimagl) - get imaginary part of a complex number
- [clog](https://manual.cs50.io/3/clog) - natural logarithm of a complex number
- [clog10](https://manual.cs50.io/3/clog10) - base-10 logarithm of a complex number
- [clog10f](https://manual.cs50.io/3/clog10f) - base-10 logarithm of a complex number
- [clog10l](https://manual.cs50.io/3/clog10l) - base-10 logarithm of a complex number
- [clog2](https://manual.cs50.io/3/clog2) - base-2 logarithm of a complex number
- [clog2f](https://manual.cs50.io/3/clog2f) - base-2 logarithm of a complex number
- [clog2l](https://manual.cs50.io/3/clog2l) - base-2 logarithm of a complex number
- [clogf](https://manual.cs50.io/3/clogf) - natural logarithm of a complex number
- [clogl](https://manual.cs50.io/3/clogl) - natural logarithm of a complex number
- [complex](https://manual.cs50.io/7/complex) - basics of complex mathematics
- [conj](https://manual.cs50.io/3/conj) - calculate the complex conjugate
- [conjf](https://manual.cs50.io/3/conjf) - calculate the complex conjugate
- [conjl](https://manual.cs50.io/3/conjl) - calculate the complex conjugate
- [cpow](https://manual.cs50.io/3/cpow) - complex power function
- [cpowf](https://manual.cs50.io/3/cpowf) - complex power function
- [cpowl](https://manual.cs50.io/3/cpowl) - complex power function
- [cproj](https://manual.cs50.io/3/cproj) - project into Riemann Sphere
- [cprojf](https://manual.cs50.io/3/cprojf) - project into Riemann Sphere
- [cprojl](https://manual.cs50.io/3/cprojl) - project into Riemann Sphere
- [creal](https://manual.cs50.io/3/creal) - get real part of a complex number
- [crealf](https://manual.cs50.io/3/crealf) - get real part of a complex number
- [creall](https://manual.cs50.io/3/creall) - get real part of a complex number
- [csin](https://manual.cs50.io/3/csin) - complex sine function
- [csinf](https://manual.cs50.io/3/csinf) - complex sine function
- [csinh](https://manual.cs50.io/3/csinh) - complex hyperbolic sine
- [csinhf](https://manual.cs50.io/3/csinhf) - complex hyperbolic sine
- [csinhl](https://manual.cs50.io/3/csinhl) - complex hyperbolic sine
- [csinl](https://manual.cs50.io/3/csinl) - complex sine function
- [csqrt](https://manual.cs50.io/3/csqrt) - complex square root
- [csqrtf](https://manual.cs50.io/3/csqrtf) - complex square root
- [csqrtl](https://manual.cs50.io/3/csqrtl) - complex square root
- [ctan](https://manual.cs50.io/3/ctan) - complex tangent function
- [ctanf](https://manual.cs50.io/3/ctanf) - complex tangent function
- [ctanh](https://manual.cs50.io/3/ctanh) - complex hyperbolic tangent
- [ctanhf](https://manual.cs50.io/3/ctanhf) - complex hyperbolic tangent
- [ctanhl](https://manual.cs50.io/3/ctanhl) - complex hyperbolic tangent
- [ctanl](https://manual.cs50.io/3/ctanl) - complex tangent function
# [cs50.h](https://manual.cs50.io/#cs50.h)
- [get\_char](https://manual.cs50.io/3/get_char) - prompts user for a line of text from stdin and returns... prompt a user for a `char`
- [get\_double](https://manual.cs50.io/3/get_double) - prompts user for a line of text from stdin and returns... prompt a user for a `double`
- [get\_float](https://manual.cs50.io/3/get_float) - prompts user for a line of text from stdin and returns... prompt a user for a `float`
- [get\_int](https://manual.cs50.io/3/get_int) - prompts user for a line of text from stdin and returns... prompt a user for an `int`
- [get\_long](https://manual.cs50.io/3/get_long) - prompts user for a line of text from stdin and returns... prompt a user for an `long`
- [get\_long\_long](https://manual.cs50.io/3/get_long_long) - prompts user for a line of text from stdin and returns...
- [get\_string](https://manual.cs50.io/3/get_string) - prompts user for a line of text from stdin and returns... prompt a user for a `string`
# [ctype.h](https://manual.cs50.io/#ctype.h)
- [isalnum](https://manual.cs50.io/3/isalnum) - character classification functions check whether a character is alphanumeric
- [isalnum\_l](https://manual.cs50.io/3/isalnum_l) - character classification functions
- [isalpha](https://manual.cs50.io/3/isalpha) - character classification functions check whether a character is alphabetical
- [isalpha\_l](https://manual.cs50.io/3/isalpha_l) - character classification functions
- [isascii](https://manual.cs50.io/3/isascii) - character classification functions
- [isascii\_l](https://manual.cs50.io/3/isascii_l) - character classification functions
- [isblank](https://manual.cs50.io/3/isblank) - character classification functions check whether a character is blank (i.e., a space or tab)
- [isblank\_l](https://manual.cs50.io/3/isblank_l) - character classification functions
- [iscntrl](https://manual.cs50.io/3/iscntrl) - character classification functions
- [iscntrl\_l](https://manual.cs50.io/3/iscntrl_l) - character classification functions
- [isdigit](https://manual.cs50.io/3/isdigit) - character classification functions check whether a character is a digit
- [isdigit\_l](https://manual.cs50.io/3/isdigit_l) - character classification functions
- [isgraph](https://manual.cs50.io/3/isgraph) - character classification functions
- [isgraph\_l](https://manual.cs50.io/3/isgraph_l) - character classification functions
- [islower](https://manual.cs50.io/3/islower) - character classification functions check whether a character is lowercase
- [islower\_l](https://manual.cs50.io/3/islower_l) - character classification functions
- [isprint](https://manual.cs50.io/3/isprint) - character classification functions
- [isprint\_l](https://manual.cs50.io/3/isprint_l) - character classification functions
- [ispunct](https://manual.cs50.io/3/ispunct) - character classification functions check whether a character is punctuation
- [ispunct\_l](https://manual.cs50.io/3/ispunct_l) - character classification functions
- [isspace](https://manual.cs50.io/3/isspace) - character classification functions check whether a character is whitespace (e.g., a newline, space, or tab)
- [isspace\_l](https://manual.cs50.io/3/isspace_l) - character classification functions
- [isupper](https://manual.cs50.io/3/isupper) - character classification functions check whether a character is uppercase
- [isupper\_l](https://manual.cs50.io/3/isupper_l) - character classification functions
- [isxdigit](https://manual.cs50.io/3/isxdigit) - character classification functions
- [isxdigit\_l](https://manual.cs50.io/3/isxdigit_l) - character classification functions
- [toascii](https://manual.cs50.io/3/toascii) - convert character to ASCII
- [tolower](https://manual.cs50.io/3/tolower) - convert uppercase or lowercase convert a `char` to lowercase
- [tolower\_l](https://manual.cs50.io/3/tolower_l) - convert uppercase or lowercase
- [toupper](https://manual.cs50.io/3/toupper) - convert uppercase or lowercase convert a `char` to uppercase
- [toupper\_l](https://manual.cs50.io/3/toupper_l) - convert uppercase or lowercase
# [dirent.h](https://manual.cs50.io/#dirent.h)
- [alphasort](https://manual.cs50.io/3/alphasort) - scan a directory for matching entries
- [getdirentries](https://manual.cs50.io/3/getdirentries) - get directory entries in a filesystem-independent format
- [readdir](https://manual.cs50.io/3/readdir) - read a directory
- [readdir\_r](https://manual.cs50.io/3/readdir_r) - read a directory
- [scandir](https://manual.cs50.io/3/scandir) - scan a directory for matching entries
- [scandirat](https://manual.cs50.io/3/scandirat) - scan a directory for matching entries
- [seekdir](https://manual.cs50.io/3/seekdir) - set the position of the next readdir() call in the dir...
- [telldir](https://manual.cs50.io/3/telldir) - return current location in directory stream
- [versionsort](https://manual.cs50.io/3/versionsort) - scan a directory for matching entries
# [dlfcn.h](https://manual.cs50.io/#dlfcn.h)
- [dladdr](https://manual.cs50.io/3/dladdr) - translate address to symbolic information
- [dladdr1](https://manual.cs50.io/3/dladdr1) - translate address to symbolic information
- [dlclose](https://manual.cs50.io/3/dlclose) - open and close a shared object
- [dlerror](https://manual.cs50.io/3/dlerror) - obtain error diagnostic for functions in the dlopen API
- [dlmopen](https://manual.cs50.io/3/dlmopen) - open and close a shared object
- [dlopen](https://manual.cs50.io/3/dlopen) - open and close a shared object
- [dlsym](https://manual.cs50.io/3/dlsym) - obtain address of a symbol in a shared object or execu...
- [dlvsym](https://manual.cs50.io/3/dlvsym) - obtain address of a symbol in a shared object or execu...
# [errno.h](https://manual.cs50.io/#errno.h)
- [errno](https://manual.cs50.io/3/errno) - number of last error
- [program\_invocation\_name](https://manual.cs50.io/3/program_invocation_name) - obtain name used to invoke calling program
- [program\_invocation\_short\_name](https://manual.cs50.io/3/program_invocation_short_name) - obtain name used to invoke calling program
# [fcntl.h](https://manual.cs50.io/#fcntl.h)
- [arm\_fadvise](https://manual.cs50.io/2/arm_fadvise) - predeclare an access pattern for file data
- [arm\_fadvise64\_64](https://manual.cs50.io/2/arm_fadvise64_64) - predeclare an access pattern for file data
- [arm\_sync\_file\_range](https://manual.cs50.io/2/arm_sync_file_range) - sync a file segment with disk
- [creat](https://manual.cs50.io/2/creat) - open and possibly create a file
- [fadvise64](https://manual.cs50.io/2/fadvise64) - predeclare an access pattern for file data
- [fadvise64\_64](https://manual.cs50.io/2/fadvise64_64) - predeclare an access pattern for file data
- [fallocate](https://manual.cs50.io/2/fallocate) - manipulate file space
- [fcntl](https://manual.cs50.io/2/fcntl) - manipulate file descriptor
- [fcntl64](https://manual.cs50.io/2/fcntl64) - manipulate file descriptor
- [name\_to\_handle\_at](https://manual.cs50.io/2/name_to_handle_at) - obtain handle for a pathname and open file via a handle
- [open](https://manual.cs50.io/2/open) - open and possibly create a file
- [open\_by\_handle\_at](https://manual.cs50.io/2/open_by_handle_at) - obtain handle for a pathname and open file via a handle
- [openat](https://manual.cs50.io/2/openat) - open and possibly create a file
- [posix\_fadvise](https://manual.cs50.io/2/posix_fadvise) - predeclare an access pattern for file data
- [posix\_fallocate](https://manual.cs50.io/3/posix_fallocate) - allocate file space
- [readahead](https://manual.cs50.io/2/readahead) - initiate file readahead into page cache
- [splice](https://manual.cs50.io/2/splice) - splice data to/from a pipe
- [sync\_file\_range](https://manual.cs50.io/2/sync_file_range) - sync a file segment with disk
- [sync\_file\_range2](https://manual.cs50.io/2/sync_file_range2) - sync a file segment with disk
- [tee](https://manual.cs50.io/2/tee) - duplicating pipe content
- [vmsplice](https://manual.cs50.io/2/vmsplice) - splice user pages to/from a pipe
# [fenv.h](https://manual.cs50.io/#fenv.h)
- [feclearexcept](https://manual.cs50.io/3/feclearexcept) - floating-point rounding and exception handling
- [fedisableexcept](https://manual.cs50.io/3/fedisableexcept) - floating-point rounding and exception handling
- [feenableexcept](https://manual.cs50.io/3/feenableexcept) - floating-point rounding and exception handling
- [fegetenv](https://manual.cs50.io/3/fegetenv) - floating-point rounding and exception handling
- [fegetexcept](https://manual.cs50.io/3/fegetexcept) - floating-point rounding and exception handling
- [fegetexceptflag](https://manual.cs50.io/3/fegetexceptflag) - floating-point rounding and exception handling
- [fegetround](https://manual.cs50.io/3/fegetround) - floating-point rounding and exception handling
- [feholdexcept](https://manual.cs50.io/3/feholdexcept) - floating-point rounding and exception handling
- [fenv](https://manual.cs50.io/3/fenv) - floating-point rounding and exception handling
- [feraiseexcept](https://manual.cs50.io/3/feraiseexcept) - floating-point rounding and exception handling
- [fesetenv](https://manual.cs50.io/3/fesetenv) - floating-point rounding and exception handling
- [fesetexceptflag](https://manual.cs50.io/3/fesetexceptflag) - floating-point rounding and exception handling
- [fesetround](https://manual.cs50.io/3/fesetround) - floating-point rounding and exception handling
- [fetestexcept](https://manual.cs50.io/3/fetestexcept) - floating-point rounding and exception handling
- [feupdateenv](https://manual.cs50.io/3/feupdateenv) - floating-point rounding and exception handling
# [fmtmsg.h](https://manual.cs50.io/#fmtmsg.h)
- [addseverity](https://manual.cs50.io/3/addseverity) - introduce new severity classes
- [fmtmsg](https://manual.cs50.io/3/fmtmsg) - print formatted error messages
# [fnmatch.h](https://manual.cs50.io/#fnmatch.h)
- [fnmatch](https://manual.cs50.io/3/fnmatch) - match filename or pathname
# [ftw.h](https://manual.cs50.io/#ftw.h)
- [ftw](https://manual.cs50.io/3/ftw) - file tree walk
- [nftw](https://manual.cs50.io/3/nftw) - file tree walk
# [glob.h](https://manual.cs50.io/#glob.h)
- [glob](https://manual.cs50.io/3/glob) - find pathnames matching a pattern, free memory from gl...
- [globfree](https://manual.cs50.io/3/globfree) - find pathnames matching a pattern, free memory from gl...
# [grp.h](https://manual.cs50.io/#grp.h)
- [fgetgrent\_r](https://manual.cs50.io/3/fgetgrent_r) - get group file entry reentrantly
- [getgrent\_r](https://manual.cs50.io/3/getgrent_r) - get group file entry reentrantly
- [getgrouplist](https://manual.cs50.io/3/getgrouplist) - get list of groups to which a user belongs
- [putgrent](https://manual.cs50.io/3/putgrent) - write a group database entry to a file
# [iconv.h](https://manual.cs50.io/#iconv.h)
- [iconv](https://manual.cs50.io/3/iconv) - perform character set conversion
- [iconv\_close](https://manual.cs50.io/3/iconv_close) - deallocate descriptor for character set conversion
- [iconv\_open](https://manual.cs50.io/3/iconv_open) - allocate descriptor for character set conversion
# [inttypes.h](https://manual.cs50.io/#inttypes.h)
- [strtoimax](https://manual.cs50.io/3/strtoimax) - convert string to integer
- [strtoumax](https://manual.cs50.io/3/strtoumax) - convert string to integer
# [langinfo.h](https://manual.cs50.io/#langinfo.h)
- [nl\_langinfo](https://manual.cs50.io/3/nl_langinfo) - query language and locale information
- [nl\_langinfo\_l](https://manual.cs50.io/3/nl_langinfo_l) - query language and locale information
# [libgen.h](https://manual.cs50.io/#libgen.h)
- [basename](https://manual.cs50.io/3/basename) - parse pathname components
- [dirname](https://manual.cs50.io/3/dirname) - parse pathname components
# [limits.h](https://manual.cs50.io/#limits.h)
- [MB\_LEN\_MAX](https://manual.cs50.io/3/MB_LEN_MAX) - maximum multibyte length of a character across all loc...
- [realpath](https://manual.cs50.io/3/realpath) - return the canonicalized absolute pathname
# [locale.h](https://manual.cs50.io/#locale.h)
- [duplocale](https://manual.cs50.io/3/duplocale) - duplicate a locale object
- [freelocale](https://manual.cs50.io/3/freelocale) - create, modify, and free a locale object
- [locale](https://manual.cs50.io/7/locale) - description of multilanguage support
- [localeconv](https://manual.cs50.io/3/localeconv) - get numeric formatting information
- [newlocale](https://manual.cs50.io/3/newlocale) - create, modify, and free a locale object
- [setlocale](https://manual.cs50.io/3/setlocale) - set the current locale
- [uselocale](https://manual.cs50.io/3/uselocale) - set/get the locale for the calling thread
# [math.h](https://manual.cs50.io/#math.h)
- [acos](https://manual.cs50.io/3/acos) - arc cosine function
- [acosf](https://manual.cs50.io/3/acosf) - arc cosine function
- [acosh](https://manual.cs50.io/3/acosh) - inverse hyperbolic cosine function
- [acoshf](https://manual.cs50.io/3/acoshf) - inverse hyperbolic cosine function
- [acoshl](https://manual.cs50.io/3/acoshl) - inverse hyperbolic cosine function
- [acosl](https://manual.cs50.io/3/acosl) - arc cosine function
- [asin](https://manual.cs50.io/3/asin) - arc sine function
- [asinf](https://manual.cs50.io/3/asinf) - arc sine function
- [asinh](https://manual.cs50.io/3/asinh) - inverse hyperbolic sine function
- [asinhf](https://manual.cs50.io/3/asinhf) - inverse hyperbolic sine function
- [asinhl](https://manual.cs50.io/3/asinhl) - inverse hyperbolic sine function
- [asinl](https://manual.cs50.io/3/asinl) - arc sine function
- [atan](https://manual.cs50.io/3/atan) - arc tangent function
- [atan2](https://manual.cs50.io/3/atan2) - arc tangent function of two variables
- [atan2f](https://manual.cs50.io/3/atan2f) - arc tangent function of two variables
- [atan2l](https://manual.cs50.io/3/atan2l) - arc tangent function of two variables
- [atanf](https://manual.cs50.io/3/atanf) - arc tangent function
- [atanh](https://manual.cs50.io/3/atanh) - inverse hyperbolic tangent function
- [atanhf](https://manual.cs50.io/3/atanhf) - inverse hyperbolic tangent function
- [atanhl](https://manual.cs50.io/3/atanhl) - inverse hyperbolic tangent function
- [atanl](https://manual.cs50.io/3/atanl) - arc tangent function
- [cbrt](https://manual.cs50.io/3/cbrt) - cube root function
- [cbrtf](https://manual.cs50.io/3/cbrtf) - cube root function
- [cbrtl](https://manual.cs50.io/3/cbrtl) - cube root function
- [ceil](https://manual.cs50.io/3/ceil) - ceiling function: smallest integral value not less tha... calculate the ceiling of a number
- [ceilf](https://manual.cs50.io/3/ceilf) - ceiling function: smallest integral value not less tha...
- [ceill](https://manual.cs50.io/3/ceill) - ceiling function: smallest integral value not less tha...
- [copysign](https://manual.cs50.io/3/copysign) - copy sign of a number
- [copysignf](https://manual.cs50.io/3/copysignf) - copy sign of a number
- [copysignl](https://manual.cs50.io/3/copysignl) - copy sign of a number
- [cos](https://manual.cs50.io/3/cos) - cosine function
- [cosf](https://manual.cs50.io/3/cosf) - cosine function
- [cosh](https://manual.cs50.io/3/cosh) - hyperbolic cosine function
- [coshf](https://manual.cs50.io/3/coshf) - hyperbolic cosine function
- [coshl](https://manual.cs50.io/3/coshl) - hyperbolic cosine function
- [cosl](https://manual.cs50.io/3/cosl) - cosine function
- [drem](https://manual.cs50.io/3/drem) - floating-point remainder function
- [dremf](https://manual.cs50.io/3/dremf) - floating-point remainder function
- [dreml](https://manual.cs50.io/3/dreml) - floating-point remainder function
- [erf](https://manual.cs50.io/3/erf) - error function
- [erfc](https://manual.cs50.io/3/erfc) - complementary error function
- [erfcf](https://manual.cs50.io/3/erfcf) - complementary error function
- [erfcl](https://manual.cs50.io/3/erfcl) - complementary error function
- [erff](https://manual.cs50.io/3/erff) - error function
- [erfl](https://manual.cs50.io/3/erfl) - error function
- [exp](https://manual.cs50.io/3/exp) - base-e exponential function
- [exp10](https://manual.cs50.io/3/exp10) - base-10 exponential function
- [exp10f](https://manual.cs50.io/3/exp10f) - base-10 exponential function
- [exp10l](https://manual.cs50.io/3/exp10l) - base-10 exponential function
- [exp2](https://manual.cs50.io/3/exp2) - base-2 exponential function
- [exp2f](https://manual.cs50.io/3/exp2f) - base-2 exponential function
- [exp2l](https://manual.cs50.io/3/exp2l) - base-2 exponential function
- [expf](https://manual.cs50.io/3/expf) - base-e exponential function
- [expl](https://manual.cs50.io/3/expl) - base-e exponential function
- [expm1](https://manual.cs50.io/3/expm1) - exponential minus 1
- [expm1f](https://manual.cs50.io/3/expm1f) - exponential minus 1
- [expm1l](https://manual.cs50.io/3/expm1l) - exponential minus 1
- [fabs](https://manual.cs50.io/3/fabs) - absolute value of floating-point number
- [fabsf](https://manual.cs50.io/3/fabsf) - absolute value of floating-point number
- [fabsl](https://manual.cs50.io/3/fabsl) - absolute value of floating-point number
- [fdim](https://manual.cs50.io/3/fdim) - positive difference
- [fdimf](https://manual.cs50.io/3/fdimf) - positive difference
- [fdiml](https://manual.cs50.io/3/fdiml) - positive difference
- [finite](https://manual.cs50.io/3/finite) - BSD floating-point classification functions
- [finitef](https://manual.cs50.io/3/finitef) - BSD floating-point classification functions
- [finitel](https://manual.cs50.io/3/finitel) - BSD floating-point classification functions
- [floor](https://manual.cs50.io/3/floor) - largest integral value not greater than argument calculate the floor of a number
- [floorf](https://manual.cs50.io/3/floorf) - largest integral value not greater than argument
- [floorl](https://manual.cs50.io/3/floorl) - largest integral value not greater than argument
- [fma](https://manual.cs50.io/3/fma) - floating-point multiply and add
- [fmaf](https://manual.cs50.io/3/fmaf) - floating-point multiply and add
- [fmal](https://manual.cs50.io/3/fmal) - floating-point multiply and add
- [fmax](https://manual.cs50.io/3/fmax) - determine maximum of two floating-point numbers
- [fmaxf](https://manual.cs50.io/3/fmaxf) - determine maximum of two floating-point numbers
- [fmaxl](https://manual.cs50.io/3/fmaxl) - determine maximum of two floating-point numbers
- [fmin](https://manual.cs50.io/3/fmin) - determine minimum of two floating-point numbers
- [fminf](https://manual.cs50.io/3/fminf) - determine minimum of two floating-point numbers
- [fminl](https://manual.cs50.io/3/fminl) - determine minimum of two floating-point numbers
- [fmod](https://manual.cs50.io/3/fmod) - floating-point remainder function
- [fmodf](https://manual.cs50.io/3/fmodf) - floating-point remainder function
- [fmodl](https://manual.cs50.io/3/fmodl) - floating-point remainder function
- [fpclassify](https://manual.cs50.io/3/fpclassify) - floating-point classification macros
- [frexp](https://manual.cs50.io/3/frexp) - convert floating-point number to fractional and integr...
- [frexpf](https://manual.cs50.io/3/frexpf) - convert floating-point number to fractional and integr...
- [frexpl](https://manual.cs50.io/3/frexpl) - convert floating-point number to fractional and integr...
- [gamma](https://manual.cs50.io/3/gamma) - (logarithm of the) gamma function
- [gammaf](https://manual.cs50.io/3/gammaf) - (logarithm of the) gamma function
- [gammal](https://manual.cs50.io/3/gammal) - (logarithm of the) gamma function
- [HUGE\_VAL](https://manual.cs50.io/3/HUGE_VAL) - floating-point constants
- [HUGE\_VALF](https://manual.cs50.io/3/HUGE_VALF) - floating-point constants
- [HUGE\_VALL](https://manual.cs50.io/3/HUGE_VALL) - floating-point constants
- [hypot](https://manual.cs50.io/3/hypot) - Euclidean distance function
- [hypotf](https://manual.cs50.io/3/hypotf) - Euclidean distance function
- [hypotl](https://manual.cs50.io/3/hypotl) - Euclidean distance function
- [ilogb](https://manual.cs50.io/3/ilogb) - get integer exponent of a floating-point value
- [ilogbf](https://manual.cs50.io/3/ilogbf) - get integer exponent of a floating-point value
- [ilogbl](https://manual.cs50.io/3/ilogbl) - get integer exponent of a floating-point value
- [INFINITY](https://manual.cs50.io/3/INFINITY) - floating-point constants
- [isfinite](https://manual.cs50.io/3/isfinite) - floating-point classification macros
- [isgreater](https://manual.cs50.io/3/isgreater) - floating-point relational tests without exception for NaN
- [isgreaterequal](https://manual.cs50.io/3/isgreaterequal) - floating-point relational tests without exception for NaN
- [isinf](https://manual.cs50.io/3/isinf) - floating-point classification macros
- [isinff](https://manual.cs50.io/3/isinff) - BSD floating-point classification functions
- [isinfl](https://manual.cs50.io/3/isinfl) - BSD floating-point classification functions
- [isless](https://manual.cs50.io/3/isless) - floating-point relational tests without exception for NaN
- [islessequal](https://manual.cs50.io/3/islessequal) - floating-point relational tests without exception for NaN
- [islessgreater](https://manual.cs50.io/3/islessgreater) - floating-point relational tests without exception for NaN
- [isnan](https://manual.cs50.io/3/isnan) - floating-point classification macros
- [isnanf](https://manual.cs50.io/3/isnanf) - BSD floating-point classification functions
- [isnanl](https://manual.cs50.io/3/isnanl) - BSD floating-point classification functions
- [isnormal](https://manual.cs50.io/3/isnormal) - floating-point classification macros
- [isunordered](https://manual.cs50.io/3/isunordered) - floating-point relational tests without exception for NaN
- [j0](https://manual.cs50.io/3/j0) - Bessel functions of the first kind
- [j0f](https://manual.cs50.io/3/j0f) - Bessel functions of the first kind
- [j0l](https://manual.cs50.io/3/j0l) - Bessel functions of the first kind
- [j1](https://manual.cs50.io/3/j1) - Bessel functions of the first kind
- [j1f](https://manual.cs50.io/3/j1f) - Bessel functions of the first kind
- [j1l](https://manual.cs50.io/3/j1l) - Bessel functions of the first kind
- [jn](https://manual.cs50.io/3/jn) - Bessel functions of the first kind
- [jnf](https://manual.cs50.io/3/jnf) - Bessel functions of the first kind
- [jnl](https://manual.cs50.io/3/jnl) - Bessel functions of the first kind
- [ldexp](https://manual.cs50.io/3/ldexp) - multiply floating-point number by integral power of 2
- [ldexpf](https://manual.cs50.io/3/ldexpf) - multiply floating-point number by integral power of 2
- [ldexpl](https://manual.cs50.io/3/ldexpl) - multiply floating-point number by integral power of 2
- [lgamma](https://manual.cs50.io/3/lgamma) - log gamma function
- [lgamma\_r](https://manual.cs50.io/3/lgamma_r) - log gamma function
- [lgammaf](https://manual.cs50.io/3/lgammaf) - log gamma function
- [lgammaf\_r](https://manual.cs50.io/3/lgammaf_r) - log gamma function
- [lgammal](https://manual.cs50.io/3/lgammal) - log gamma function
- [lgammal\_r](https://manual.cs50.io/3/lgammal_r) - log gamma function
- [llrint](https://manual.cs50.io/3/llrint) - round to nearest integer
- [llrintf](https://manual.cs50.io/3/llrintf) - round to nearest integer
- [llrintl](https://manual.cs50.io/3/llrintl) - round to nearest integer
- [llround](https://manual.cs50.io/3/llround) - round to nearest integer
- [llroundf](https://manual.cs50.io/3/llroundf) - round to nearest integer
- [llroundl](https://manual.cs50.io/3/llroundl) - round to nearest integer
- [log](https://manual.cs50.io/3/log) - natural logarithmic function
- [log10](https://manual.cs50.io/3/log10) - base-10 logarithmic function
- [log10f](https://manual.cs50.io/3/log10f) - base-10 logarithmic function
- [log10l](https://manual.cs50.io/3/log10l) - base-10 logarithmic function
- [log1p](https://manual.cs50.io/3/log1p) - logarithm of 1 plus argument
- [log1pf](https://manual.cs50.io/3/log1pf) - logarithm of 1 plus argument
- [log1pl](https://manual.cs50.io/3/log1pl) - logarithm of 1 plus argument
- [log2](https://manual.cs50.io/3/log2) - base-2 logarithmic function calculate the base-2 logarithm of a number
- [log2f](https://manual.cs50.io/3/log2f) - base-2 logarithmic function
- [log2l](https://manual.cs50.io/3/log2l) - base-2 logarithmic function
- [logb](https://manual.cs50.io/3/logb) - get exponent of a floating-point value
- [logbf](https://manual.cs50.io/3/logbf) - get exponent of a floating-point value
- [logbl](https://manual.cs50.io/3/logbl) - get exponent of a floating-point value
- [logf](https://manual.cs50.io/3/logf) - natural logarithmic function
- [logl](https://manual.cs50.io/3/logl) - natural logarithmic function
- [lrint](https://manual.cs50.io/3/lrint) - round to nearest integer
- [lrintf](https://manual.cs50.io/3/lrintf) - round to nearest integer
- [lrintl](https://manual.cs50.io/3/lrintl) - round to nearest integer
- [lround](https://manual.cs50.io/3/lround) - round to nearest integer
- [lroundf](https://manual.cs50.io/3/lroundf) - round to nearest integer
- [lroundl](https://manual.cs50.io/3/lroundl) - round to nearest integer
- [math\_error](https://manual.cs50.io/7/math_error) - detecting errors from mathematical functions
- [matherr](https://manual.cs50.io/3/matherr) - SVID math library exception handling
- [modf](https://manual.cs50.io/3/modf) - extract signed integral and fractional values from flo...
- [modff](https://manual.cs50.io/3/modff) - extract signed integral and fractional values from flo...
- [modfl](https://manual.cs50.io/3/modfl) - extract signed integral and fractional values from flo...
- [NAN](https://manual.cs50.io/3/NAN) - floating-point constants
- [nan](https://manual.cs50.io/3/nan) - return 'Not a Number'
- [nanf](https://manual.cs50.io/3/nanf) - return 'Not a Number'
- [nanl](https://manual.cs50.io/3/nanl) - return 'Not a Number'
- [nearbyint](https://manual.cs50.io/3/nearbyint) - round to nearest integer
- [nearbyintf](https://manual.cs50.io/3/nearbyintf) - round to nearest integer
- [nearbyintl](https://manual.cs50.io/3/nearbyintl) - round to nearest integer
- [nextafter](https://manual.cs50.io/3/nextafter) - floating-point number manipulation
- [nextafterf](https://manual.cs50.io/3/nextafterf) - floating-point number manipulation
- [nextafterl](https://manual.cs50.io/3/nextafterl) - floating-point number manipulation
- [nextdown](https://manual.cs50.io/3/nextdown) - return next floating-point number toward positive/nega...
- [nextdownf](https://manual.cs50.io/3/nextdownf) - return next floating-point number toward positive/nega...
- [nextdownl](https://manual.cs50.io/3/nextdownl) - return next floating-point number toward positive/nega...
- [nexttoward](https://manual.cs50.io/3/nexttoward) - floating-point number manipulation
- [nexttowardf](https://manual.cs50.io/3/nexttowardf) - floating-point number manipulation
- [nexttowardl](https://manual.cs50.io/3/nexttowardl) - floating-point number manipulation
- [nextup](https://manual.cs50.io/3/nextup) - return next floating-point number toward positive/nega...
- [nextupf](https://manual.cs50.io/3/nextupf) - return next floating-point number toward positive/nega...
- [nextupl](https://manual.cs50.io/3/nextupl) - return next floating-point number toward positive/nega...
- [pow](https://manual.cs50.io/3/pow) - power functions raise a number to a power
- [pow10](https://manual.cs50.io/3/pow10) - base-10 power functions
- [pow10f](https://manual.cs50.io/3/pow10f) - base-10 power functions
- [pow10l](https://manual.cs50.io/3/pow10l) - base-10 power functions
- [powf](https://manual.cs50.io/3/powf) - power functions
- [powl](https://manual.cs50.io/3/powl) - power functions
- [remainder](https://manual.cs50.io/3/remainder) - floating-point remainder function
- [remainderf](https://manual.cs50.io/3/remainderf) - floating-point remainder function
- [remainderl](https://manual.cs50.io/3/remainderl) - floating-point remainder function
- [remquo](https://manual.cs50.io/3/remquo) - remainder and part of quotient
- [remquof](https://manual.cs50.io/3/remquof) - remainder and part of quotient
- [remquol](https://manual.cs50.io/3/remquol) - remainder and part of quotient
- [rint](https://manual.cs50.io/3/rint) - round to nearest integer
- [rintf](https://manual.cs50.io/3/rintf) - round to nearest integer
- [rintl](https://manual.cs50.io/3/rintl) - round to nearest integer
- [round](https://manual.cs50.io/3/round) - round to nearest integer, away from zero round a number to the nearest integer
- [roundf](https://manual.cs50.io/3/roundf) - round to nearest integer, away from zero
- [roundl](https://manual.cs50.io/3/roundl) - round to nearest integer, away from zero
- [scalb](https://manual.cs50.io/3/scalb) - multiply floating-point number by integral power of ra...
- [scalbf](https://manual.cs50.io/3/scalbf) - multiply floating-point number by integral power of ra...
- [scalbl](https://manual.cs50.io/3/scalbl) - multiply floating-point number by integral power of ra...
- [scalbln](https://manual.cs50.io/3/scalbln) - multiply floating-point number by integral power of radix
- [scalblnf](https://manual.cs50.io/3/scalblnf) - multiply floating-point number by integral power of radix
- [scalblnl](https://manual.cs50.io/3/scalblnl) - multiply floating-point number by integral power of radix
- [scalbn](https://manual.cs50.io/3/scalbn) - multiply floating-point number by integral power of radix
- [scalbnf](https://manual.cs50.io/3/scalbnf) - multiply floating-point number by integral power of radix
- [scalbnl](https://manual.cs50.io/3/scalbnl) - multiply floating-point number by integral power of radix
- [signbit](https://manual.cs50.io/3/signbit) - test sign of a real floating-point number
- [signgam](https://manual.cs50.io/3/signgam) - log gamma function
- [significand](https://manual.cs50.io/3/significand) - get mantissa of floating-point number
- [significandf](https://manual.cs50.io/3/significandf) - get mantissa of floating-point number
- [significandl](https://manual.cs50.io/3/significandl) - get mantissa of floating-point number
- [sin](https://manual.cs50.io/3/sin) - sine function
- [sincos](https://manual.cs50.io/3/sincos) - calculate sin and cos simultaneously
- [sincosf](https://manual.cs50.io/3/sincosf) - calculate sin and cos simultaneously
- [sincosl](https://manual.cs50.io/3/sincosl) - calculate sin and cos simultaneously
- [sinf](https://manual.cs50.io/3/sinf) - sine function
- [sinh](https://manual.cs50.io/3/sinh) - hyperbolic sine function
- [sinhf](https://manual.cs50.io/3/sinhf) - hyperbolic sine function
- [sinhl](https://manual.cs50.io/3/sinhl) - hyperbolic sine function
- [sinl](https://manual.cs50.io/3/sinl) - sine function
- [sqrt](https://manual.cs50.io/3/sqrt) - square root function calculate the square root of a number
- [sqrtf](https://manual.cs50.io/3/sqrtf) - square root function
- [sqrtl](https://manual.cs50.io/3/sqrtl) - square root function
- [tan](https://manual.cs50.io/3/tan) - tangent function
- [tanf](https://manual.cs50.io/3/tanf) - tangent function
- [tanh](https://manual.cs50.io/3/tanh) - hyperbolic tangent function
- [tanhf](https://manual.cs50.io/3/tanhf) - hyperbolic tangent function
- [tanhl](https://manual.cs50.io/3/tanhl) - hyperbolic tangent function
- [tanl](https://manual.cs50.io/3/tanl) - tangent function
- [tgamma](https://manual.cs50.io/3/tgamma) - true gamma function
- [tgammaf](https://manual.cs50.io/3/tgammaf) - true gamma function
- [tgammal](https://manual.cs50.io/3/tgammal) - true gamma function
- [trunc](https://manual.cs50.io/3/trunc) - round to integer, toward zero
- [truncf](https://manual.cs50.io/3/truncf) - round to integer, toward zero
- [truncl](https://manual.cs50.io/3/truncl) - round to integer, toward zero
- [y0](https://manual.cs50.io/3/y0) - Bessel functions of the second kind
- [y0f](https://manual.cs50.io/3/y0f) - Bessel functions of the second kind
- [y0l](https://manual.cs50.io/3/y0l) - Bessel functions of the second kind
- [y1](https://manual.cs50.io/3/y1) - Bessel functions of the second kind
- [y1f](https://manual.cs50.io/3/y1f) - Bessel functions of the second kind
- [y1l](https://manual.cs50.io/3/y1l) - Bessel functions of the second kind
- [yn](https://manual.cs50.io/3/yn) - Bessel functions of the second kind
- [ynf](https://manual.cs50.io/3/ynf) - Bessel functions of the second kind
- [ynl](https://manual.cs50.io/3/ynl) - Bessel functions of the second kind
# [monetary.h](https://manual.cs50.io/#monetary.h)
- [strfmon](https://manual.cs50.io/3/strfmon) - convert monetary value to a string
- [strfmon\_l](https://manual.cs50.io/3/strfmon_l) - convert monetary value to a string
# [mqueue.h](https://manual.cs50.io/#mqueue.h)
- [mq\_close](https://manual.cs50.io/3/mq_close) - close a message queue descriptor
- [mq\_getattr](https://manual.cs50.io/3/mq_getattr) - get/set message queue attributes
- [mq\_notify](https://manual.cs50.io/2/mq_notify) - register for notification when a message is available
- [mq\_notify](https://manual.cs50.io/3/mq_notify) - register for notification when a message is available
- [mq\_open](https://manual.cs50.io/2/mq_open) - open a message queue
- [mq\_open](https://manual.cs50.io/3/mq_open) - open a message queue
- [mq\_receive](https://manual.cs50.io/3/mq_receive) - receive a message from a message queue
- [mq\_send](https://manual.cs50.io/3/mq_send) - send a message to a message queue
- [mq\_setattr](https://manual.cs50.io/3/mq_setattr) - get/set message queue attributes
- [mq\_timedreceive](https://manual.cs50.io/2/mq_timedreceive) - receive a message from a message queue
- [mq\_timedreceive](https://manual.cs50.io/3/mq_timedreceive) - receive a message from a message queue
- [mq\_timedsend](https://manual.cs50.io/2/mq_timedsend) - send a message to a message queue
- [mq\_timedsend](https://manual.cs50.io/3/mq_timedsend) - send a message to a message queue
- [mq\_unlink](https://manual.cs50.io/2/mq_unlink) - remove a message queue
- [mq\_unlink](https://manual.cs50.io/3/mq_unlink) - remove a message queue
# [net/if.h](https://manual.cs50.io/#net/if.h)
- [if\_freenameindex](https://manual.cs50.io/3/if_freenameindex) - get network interface names and indexes
- [if\_indextoname](https://manual.cs50.io/3/if_indextoname) - mappings between network interface names and indexes
- [if\_nameindex](https://manual.cs50.io/3/if_nameindex) - get network interface names and indexes
- [if\_nametoindex](https://manual.cs50.io/3/if_nametoindex) - mappings between network interface names and indexes
# [netdb.h](https://manual.cs50.io/#netdb.h)
- [endhostent](https://manual.cs50.io/3/endhostent) - get network host entry
- [endnetent](https://manual.cs50.io/3/endnetent) - get network entry
- [endnetgrent](https://manual.cs50.io/3/endnetgrent) - handle network group entries
- [endprotoent](https://manual.cs50.io/3/endprotoent) - get protocol entry
- [endrpcent](https://manual.cs50.io/3/endrpcent) - get RPC entry
- [endservent](https://manual.cs50.io/3/endservent) - get service entry
- [gai\_cancel](https://manual.cs50.io/3/gai_cancel) - asynchronous network address and service translation
- [gai\_error](https://manual.cs50.io/3/gai_error) - asynchronous network address and service translation
- [gai\_suspend](https://manual.cs50.io/3/gai_suspend) - asynchronous network address and service translation
- [getaddrinfo\_a](https://manual.cs50.io/3/getaddrinfo_a) - asynchronous network address and service translation
- [gethostbyaddr](https://manual.cs50.io/3/gethostbyaddr) - get network host entry
- [gethostbyaddr\_r](https://manual.cs50.io/3/gethostbyaddr_r) - get network host entry
- [gethostbyname](https://manual.cs50.io/3/gethostbyname) - get network host entry
- [gethostbyname2](https://manual.cs50.io/3/gethostbyname2) - get network host entry
- [gethostbyname2\_r](https://manual.cs50.io/3/gethostbyname2_r) - get network host entry
- [gethostbyname\_r](https://manual.cs50.io/3/gethostbyname_r) - get network host entry
- [gethostent](https://manual.cs50.io/3/gethostent) - get network host entry
- [gethostent\_r](https://manual.cs50.io/3/gethostent_r) - get network host entry
- [getnetbyaddr](https://manual.cs50.io/3/getnetbyaddr) - get network entry
- [getnetbyaddr\_r](https://manual.cs50.io/3/getnetbyaddr_r) - get network entry (reentrant)
- [getnetbyname](https://manual.cs50.io/3/getnetbyname) - get network entry
- [getnetbyname\_r](https://manual.cs50.io/3/getnetbyname_r) - get network entry (reentrant)
- [getnetent](https://manual.cs50.io/3/getnetent) - get network entry
- [getnetent\_r](https://manual.cs50.io/3/getnetent_r) - get network entry (reentrant)
- [getnetgrent](https://manual.cs50.io/3/getnetgrent) - handle network group entries
- [getnetgrent\_r](https://manual.cs50.io/3/getnetgrent_r) - handle network group entries
- [getprotobyname](https://manual.cs50.io/3/getprotobyname) - get protocol entry
- [getprotobyname\_r](https://manual.cs50.io/3/getprotobyname_r) - get protocol entry (reentrant)
- [getprotobynumber](https://manual.cs50.io/3/getprotobynumber) - get protocol entry
- [getprotobynumber\_r](https://manual.cs50.io/3/getprotobynumber_r) - get protocol entry (reentrant)
- [getprotoent](https://manual.cs50.io/3/getprotoent) - get protocol entry
- [getprotoent\_r](https://manual.cs50.io/3/getprotoent_r) - get protocol entry (reentrant)
- [getrpcbyname](https://manual.cs50.io/3/getrpcbyname) - get RPC entry
- [getrpcbyname\_r](https://manual.cs50.io/3/getrpcbyname_r) - get RPC entry (reentrant)
- [getrpcbynumber](https://manual.cs50.io/3/getrpcbynumber) - get RPC entry
- [getrpcbynumber\_r](https://manual.cs50.io/3/getrpcbynumber_r) - get RPC entry (reentrant)
- [getrpcent](https://manual.cs50.io/3/getrpcent) - get RPC entry
- [getrpcent\_r](https://manual.cs50.io/3/getrpcent_r) - get RPC entry (reentrant)
- [getservbyname](https://manual.cs50.io/3/getservbyname) - get service entry
- [getservbyname\_r](https://manual.cs50.io/3/getservbyname_r) - get service entry (reentrant)
- [getservbyport](https://manual.cs50.io/3/getservbyport) - get service entry
- [getservbyport\_r](https://manual.cs50.io/3/getservbyport_r) - get service entry (reentrant)
- [getservent](https://manual.cs50.io/3/getservent) - get service entry
- [getservent\_r](https://manual.cs50.io/3/getservent_r) - get service entry (reentrant)
- [h\_errno](https://manual.cs50.io/3/h_errno) - get network host entry
- [herror](https://manual.cs50.io/3/herror) - get network host entry
- [hstrerror](https://manual.cs50.io/3/hstrerror) - get network host entry
- [innetgr](https://manual.cs50.io/3/innetgr) - handle network group entries
- [rexec](https://manual.cs50.io/3/rexec) - return stream to a remote command
- [rexec\_af](https://manual.cs50.io/3/rexec_af) - return stream to a remote command
- [sethostent](https://manual.cs50.io/3/sethostent) - get network host entry
- [setnetent](https://manual.cs50.io/3/setnetent) - get network entry
- [setnetgrent](https://manual.cs50.io/3/setnetgrent) - handle network group entries
- [setprotoent](https://manual.cs50.io/3/setprotoent) - get protocol entry
- [setrpcent](https://manual.cs50.io/3/setrpcent) - get RPC entry
- [setservent](https://manual.cs50.io/3/setservent) - get service entry
# [netinet/in.h](https://manual.cs50.io/#netinet/in.h)
- [dn\_comp](https://manual.cs50.io/3/dn_comp) - resolver routines
- [dn\_expand](https://manual.cs50.io/3/dn_expand) - resolver routines
- [res\_init](https://manual.cs50.io/3/res_init) - resolver routines
- [res\_mkquery](https://manual.cs50.io/3/res_mkquery) - resolver routines
- [res\_nclose](https://manual.cs50.io/3/res_nclose) - resolver routines
- [res\_ninit](https://manual.cs50.io/3/res_ninit) - resolver routines
- [res\_nmkquery](https://manual.cs50.io/3/res_nmkquery) - resolver routines
- [res\_nquery](https://manual.cs50.io/3/res_nquery) - resolver routines
- [res\_nquerydomain](https://manual.cs50.io/3/res_nquerydomain) - resolver routines
- [res\_nsearch](https://manual.cs50.io/3/res_nsearch) - resolver routines
- [res\_nsend](https://manual.cs50.io/3/res_nsend) - resolver routines
- [res\_query](https://manual.cs50.io/3/res_query) - resolver routines
- [res\_querydomain](https://manual.cs50.io/3/res_querydomain) - resolver routines
- [res\_search](https://manual.cs50.io/3/res_search) - resolver routines
- [res\_send](https://manual.cs50.io/3/res_send) - resolver routines
- [resolver](https://manual.cs50.io/3/resolver) - resolver routines
# [nl\_types.h](https://manual.cs50.io/#nl_types.h)
- [catclose](https://manual.cs50.io/3/catclose) - open/close a message catalog
- [catgets](https://manual.cs50.io/3/catgets) - get message from a message catalog
- [catopen](https://manual.cs50.io/3/catopen) - open/close a message catalog
# [poll.h](https://manual.cs50.io/#poll.h)
- [poll](https://manual.cs50.io/2/poll) - wait for some event on a file descriptor
- [ppoll](https://manual.cs50.io/2/ppoll) - wait for some event on a file descriptor
# [pthread.h](https://manual.cs50.io/#pthread.h)
- [pthread\_attr\_destroy](https://manual.cs50.io/3/pthread_attr_destroy) - initialize and destroy thread attributes object
- [pthread\_attr\_getaffinity\_np](https://manual.cs50.io/3/pthread_attr_getaffinity_np) - set/get CPU affinity attribute in thread at...
- [pthread\_attr\_getdetachstate](https://manual.cs50.io/3/pthread_attr_getdetachstate) - set/get detach state attribute in thread at...
- [pthread\_attr\_getguardsize](https://manual.cs50.io/3/pthread_attr_getguardsize) - set/get guard size attribute in thread attrib...
- [pthread\_attr\_getinheritsched](https://manual.cs50.io/3/pthread_attr_getinheritsched) - set/get inherit-scheduler attribute in thr...
- [pthread\_attr\_getschedparam](https://manual.cs50.io/3/pthread_attr_getschedparam) - set/get scheduling parameter attributes in t...
- [pthread\_attr\_getschedpolicy](https://manual.cs50.io/3/pthread_attr_getschedpolicy) - set/get scheduling policy attribute in thre...
- [pthread\_attr\_getscope](https://manual.cs50.io/3/pthread_attr_getscope) - set/get contention scope attribute in thread attr...
- [pthread\_attr\_getsigmask\_np](https://manual.cs50.io/3/pthread_attr_getsigmask_np) - set/get signal mask attribute in thread attr...
- [pthread\_attr\_getstack](https://manual.cs50.io/3/pthread_attr_getstack) - set/get stack attributes in thread attributes object
- [pthread\_attr\_getstackaddr](https://manual.cs50.io/3/pthread_attr_getstackaddr) - set/get stack address attribute in thread att...
- [pthread\_attr\_getstacksize](https://manual.cs50.io/3/pthread_attr_getstacksize) - set/get stack size attribute in thread attrib...
- [pthread\_attr\_init](https://manual.cs50.io/3/pthread_attr_init) - initialize and destroy thread attributes object
- [pthread\_attr\_setaffinity\_np](https://manual.cs50.io/3/pthread_attr_setaffinity_np) - set/get CPU affinity attribute in thread at...
- [pthread\_attr\_setdetachstate](https://manual.cs50.io/3/pthread_attr_setdetachstate) - set/get detach state attribute in thread at...
- [pthread\_attr\_setguardsize](https://manual.cs50.io/3/pthread_attr_setguardsize) - set/get guard size attribute in thread attrib...
- [pthread\_attr\_setinheritsched](https://manual.cs50.io/3/pthread_attr_setinheritsched) - set/get inherit-scheduler attribute in thr...
- [pthread\_attr\_setschedparam](https://manual.cs50.io/3/pthread_attr_setschedparam) - set/get scheduling parameter attributes in t...
- [pthread\_attr\_setschedpolicy](https://manual.cs50.io/3/pthread_attr_setschedpolicy) - set/get scheduling policy attribute in thre...
- [pthread\_attr\_setscope](https://manual.cs50.io/3/pthread_attr_setscope) - set/get contention scope attribute in thread attr...
- [pthread\_attr\_setsigmask\_np](https://manual.cs50.io/3/pthread_attr_setsigmask_np) - set/get signal mask attribute in thread attr...
- [pthread\_attr\_setstack](https://manual.cs50.io/3/pthread_attr_setstack) - set/get stack attributes in thread attributes object
- [pthread\_attr\_setstackaddr](https://manual.cs50.io/3/pthread_attr_setstackaddr) - set/get stack address attribute in thread att...
- [pthread\_attr\_setstacksize](https://manual.cs50.io/3/pthread_attr_setstacksize) - set/get stack size attribute in thread attrib...
- [pthread\_cancel](https://manual.cs50.io/3/pthread_cancel) - send a cancelation request to a thread
- [pthread\_cleanup\_pop](https://manual.cs50.io/3/pthread_cleanup_pop) - push and pop thread cancelation clean-up handlers
- [pthread\_cleanup\_pop\_restore\_np](https://manual.cs50.io/3/pthread_cleanup_pop_restore_np) - push and pop thread cancelation clean-up...
- [pthread\_cleanup\_push](https://manual.cs50.io/3/pthread_cleanup_push) - push and pop thread cancelation clean-up handlers
- [pthread\_cleanup\_push\_defer\_np](https://manual.cs50.io/3/pthread_cleanup_push_defer_np) - push and pop thread cancelation clean-up ...
- [pthread\_create](https://manual.cs50.io/3/pthread_create) - create a new thread
- [pthread\_detach](https://manual.cs50.io/3/pthread_detach) - detach a thread
- [pthread\_equal](https://manual.cs50.io/3/pthread_equal) - compare thread IDs
- [pthread\_exit](https://manual.cs50.io/3/pthread_exit) - terminate calling thread
- [pthread\_getaffinity\_np](https://manual.cs50.io/3/pthread_getaffinity_np) - set/get CPU affinity of a thread
- [pthread\_getattr\_default\_np](https://manual.cs50.io/3/pthread_getattr_default_np) - get or set default thread-creation attributes
- [pthread\_getattr\_np](https://manual.cs50.io/3/pthread_getattr_np) - get attributes of created thread
- [pthread\_getconcurrency](https://manual.cs50.io/3/pthread_getconcurrency) - set/get the concurrency level
- [pthread\_getcpuclockid](https://manual.cs50.io/3/pthread_getcpuclockid) - retrieve ID of a thread's CPU time clock
- [pthread\_getname\_np](https://manual.cs50.io/3/pthread_getname_np) - set/get the name of a thread
- [pthread\_getschedparam](https://manual.cs50.io/3/pthread_getschedparam) - set/get scheduling policy and parameters of a thread
- [pthread\_join](https://manual.cs50.io/3/pthread_join) - join with a terminated thread
- [pthread\_kill\_other\_threads\_np](https://manual.cs50.io/3/pthread_kill_other_threads_np) - terminate all other threads in process
- [pthread\_mutex\_consistent](https://manual.cs50.io/3/pthread_mutex_consistent) - make a robust mutex consistent
- [pthread\_mutex\_consistent\_np](https://manual.cs50.io/3/pthread_mutex_consistent_np) - make a robust mutex consistent
- [pthread\_mutexattr\_getpshared](https://manual.cs50.io/3/pthread_mutexattr_getpshared) - get/set process-shared mutex attribute
- [pthread\_mutexattr\_getrobust](https://manual.cs50.io/3/pthread_mutexattr_getrobust) - get and set the robustness attribute of a m...
- [pthread\_mutexattr\_getrobust\_np](https://manual.cs50.io/3/pthread_mutexattr_getrobust_np) - get and set the robustness attribute of ...
- [pthread\_mutexattr\_setpshared](https://manual.cs50.io/3/pthread_mutexattr_setpshared) - get/set process-shared mutex attribute
- [pthread\_mutexattr\_setrobust](https://manual.cs50.io/3/pthread_mutexattr_setrobust) - get and set the robustness attribute of a m...
- [pthread\_mutexattr\_setrobust\_np](https://manual.cs50.io/3/pthread_mutexattr_setrobust_np) - get and set the robustness attribute of ...
- [pthread\_rwlockattr\_getkind\_np](https://manual.cs50.io/3/pthread_rwlockattr_getkind_np) - set/get the read-write lock kind of the t...
- [pthread\_rwlockattr\_setkind\_np](https://manual.cs50.io/3/pthread_rwlockattr_setkind_np) - set/get the read-write lock kind of the t...
- [pthread\_self](https://manual.cs50.io/3/pthread_self) - obtain ID of the calling thread
- [pthread\_setaffinity\_np](https://manual.cs50.io/3/pthread_setaffinity_np) - set/get CPU affinity of a thread
- [pthread\_setattr\_default\_np](https://manual.cs50.io/3/pthread_setattr_default_np) - get or set default thread-creation attributes
- [pthread\_setcancelstate](https://manual.cs50.io/3/pthread_setcancelstate) - set cancelability state and type
- [pthread\_setcanceltype](https://manual.cs50.io/3/pthread_setcanceltype) - set cancelability state and type
- [pthread\_setconcurrency](https://manual.cs50.io/3/pthread_setconcurrency) - set/get the concurrency level
- [pthread\_setname\_np](https://manual.cs50.io/3/pthread_setname_np) - set/get the name of a thread
- [pthread\_setschedparam](https://manual.cs50.io/3/pthread_setschedparam) - set/get scheduling policy and parameters of a thread
- [pthread\_setschedprio](https://manual.cs50.io/3/pthread_setschedprio) - set scheduling priority of a thread
- [pthread\_spin\_destroy](https://manual.cs50.io/3/pthread_spin_destroy) - initialize or destroy a spin lock
- [pthread\_spin\_init](https://manual.cs50.io/3/pthread_spin_init) - initialize or destroy a spin lock
- [pthread\_spin\_lock](https://manual.cs50.io/3/pthread_spin_lock) - lock and unlock a spin lock
- [pthread\_spin\_trylock](https://manual.cs50.io/3/pthread_spin_trylock) - lock and unlock a spin lock
- [pthread\_spin\_unlock](https://manual.cs50.io/3/pthread_spin_unlock) - lock and unlock a spin lock
- [pthread\_testcancel](https://manual.cs50.io/3/pthread_testcancel) - request delivery of any pending cancelation request
- [pthread\_timedjoin\_np](https://manual.cs50.io/3/pthread_timedjoin_np) - try to join with a terminated thread
- [pthread\_tryjoin\_np](https://manual.cs50.io/3/pthread_tryjoin_np) - try to join with a terminated thread
- [pthread\_yield](https://manual.cs50.io/3/pthread_yield) - yield the processor
# [pwd.h](https://manual.cs50.io/#pwd.h)
- [fgetpwent\_r](https://manual.cs50.io/3/fgetpwent_r) - get passwd file entry reentrantly
- [getpwent\_r](https://manual.cs50.io/3/getpwent_r) - get passwd file entry reentrantly
# [regex.h](https://manual.cs50.io/#regex.h)
- [regcomp](https://manual.cs50.io/3/regcomp) - POSIX regex functions
- [regerror](https://manual.cs50.io/3/regerror) - POSIX regex functions
- [regex](https://manual.cs50.io/3/regex) - POSIX regex functions
- [regexec](https://manual.cs50.io/3/regexec) - POSIX regex functions
- [regfree](https://manual.cs50.io/3/regfree) - POSIX regex functions
# [sched.h](https://manual.cs50.io/#sched.h)
- [\_\_clone2](https://manual.cs50.io/2/__clone2) - create a child process
- [clone](https://manual.cs50.io/2/clone) - create a child process
- [clone2](https://manual.cs50.io/2/clone2) - create a child process
- [clone3](https://manual.cs50.io/2/clone3) - create a child process
- [CPU\_ALLOC](https://manual.cs50.io/3/CPU_ALLOC) - macros for manipulating CPU sets
- [CPU\_ALLOC\_SIZE](https://manual.cs50.io/3/CPU_ALLOC_SIZE) - macros for manipulating CPU sets
- [CPU\_AND](https://manual.cs50.io/3/CPU_AND) - macros for manipulating CPU sets
- [CPU\_AND\_S](https://manual.cs50.io/3/CPU_AND_S) - macros for manipulating CPU sets
- [CPU\_CLR](https://manual.cs50.io/3/CPU_CLR) - macros for manipulating CPU sets
- [CPU\_CLR\_S](https://manual.cs50.io/3/CPU_CLR_S) - macros for manipulating CPU sets
- [CPU\_COUNT](https://manual.cs50.io/3/CPU_COUNT) - macros for manipulating CPU sets
- [CPU\_COUNT\_S](https://manual.cs50.io/3/CPU_COUNT_S) - macros for manipulating CPU sets
- [CPU\_EQUAL](https://manual.cs50.io/3/CPU_EQUAL) - macros for manipulating CPU sets
- [CPU\_EQUAL\_S](https://manual.cs50.io/3/CPU_EQUAL_S) - macros for manipulating CPU sets
- [CPU\_FREE](https://manual.cs50.io/3/CPU_FREE) - macros for manipulating CPU sets
- [CPU\_ISSET](https://manual.cs50.io/3/CPU_ISSET) - macros for manipulating CPU sets
- [CPU\_ISSET\_S](https://manual.cs50.io/3/CPU_ISSET_S) - macros for manipulating CPU sets
- [CPU\_OR](https://manual.cs50.io/3/CPU_OR) - macros for manipulating CPU sets
- [CPU\_OR\_S](https://manual.cs50.io/3/CPU_OR_S) - macros for manipulating CPU sets
- [CPU\_SET](https://manual.cs50.io/3/CPU_SET) - macros for manipulating CPU sets
- [CPU\_SET\_S](https://manual.cs50.io/3/CPU_SET_S) - macros for manipulating CPU sets
- [CPU\_XOR](https://manual.cs50.io/3/CPU_XOR) - macros for manipulating CPU sets
- [CPU\_XOR\_S](https://manual.cs50.io/3/CPU_XOR_S) - macros for manipulating CPU sets
- [CPU\_ZERO](https://manual.cs50.io/3/CPU_ZERO) - macros for manipulating CPU sets
- [CPU\_ZERO\_S](https://manual.cs50.io/3/CPU_ZERO_S) - macros for manipulating CPU sets
- [getcpu](https://manual.cs50.io/2/getcpu) - determine CPU and NUMA node on which the calling threa...
- [sched\_get\_priority\_max](https://manual.cs50.io/2/sched_get_priority_max) - get static priority range
- [sched\_get\_priority\_min](https://manual.cs50.io/2/sched_get_priority_min) - get static priority range
- [sched\_getaffinity](https://manual.cs50.io/2/sched_getaffinity) - set and get a thread's CPU affinity mask
- [sched\_getcpu](https://manual.cs50.io/3/sched_getcpu) - determine CPU on which the calling thread is running
- [sched\_getparam](https://manual.cs50.io/2/sched_getparam) - set and get scheduling parameters
- [sched\_getscheduler](https://manual.cs50.io/2/sched_getscheduler) - set and get scheduling policy/parameters
- [sched\_rr\_get\_interval](https://manual.cs50.io/2/sched_rr_get_interval) - get the SCHED\_RR interval for the named process
- [sched\_setaffinity](https://manual.cs50.io/2/sched_setaffinity) - set and get a thread's CPU affinity mask
- [sched\_setparam](https://manual.cs50.io/2/sched_setparam) - set and get scheduling parameters
- [sched\_setscheduler](https://manual.cs50.io/2/sched_setscheduler) - set and get scheduling policy/parameters
- [sched\_yield](https://manual.cs50.io/2/sched_yield) - yield the processor
- [setns](https://manual.cs50.io/2/setns) - reassociate thread with a namespace
- [unshare](https://manual.cs50.io/2/unshare) - disassociate parts of the process execution context
# [search.h](https://manual.cs50.io/#search.h)
- [hcreate](https://manual.cs50.io/3/hcreate) - hash table management
- [hcreate\_r](https://manual.cs50.io/3/hcreate_r) - hash table management
- [hdestroy](https://manual.cs50.io/3/hdestroy) - hash table management
- [hdestroy\_r](https://manual.cs50.io/3/hdestroy_r) - hash table management
- [hsearch](https://manual.cs50.io/3/hsearch) - hash table management
- [hsearch\_r](https://manual.cs50.io/3/hsearch_r) - hash table management
- [insque](https://manual.cs50.io/3/insque) - insert/remove an item from a queue
- [lfind](https://manual.cs50.io/3/lfind) - linear search of an array
- [lsearch](https://manual.cs50.io/3/lsearch) - linear search of an array
- [remque](https://manual.cs50.io/3/remque) - insert/remove an item from a queue
- [tdelete](https://manual.cs50.io/3/tdelete) - manage a binary search tree
- [tdestroy](https://manual.cs50.io/3/tdestroy) - manage a binary search tree
- [tfind](https://manual.cs50.io/3/tfind) - manage a binary search tree
- [tsearch](https://manual.cs50.io/3/tsearch) - manage a binary search tree
- [twalk](https://manual.cs50.io/3/twalk) - manage a binary search tree
- [twalk\_r](https://manual.cs50.io/3/twalk_r) - manage a binary search tree
# [semaphore.h](https://manual.cs50.io/#semaphore.h)
- [sem\_close](https://manual.cs50.io/3/sem_close) - close a named semaphore
- [sem\_destroy](https://manual.cs50.io/3/sem_destroy) - destroy an unnamed semaphore
- [sem\_getvalue](https://manual.cs50.io/3/sem_getvalue) - get the value of a semaphore
- [sem\_init](https://manual.cs50.io/3/sem_init) - initialize an unnamed semaphore
- [sem\_open](https://manual.cs50.io/3/sem_open) - initialize and open a named semaphore
- [sem\_post](https://manual.cs50.io/3/sem_post) - unlock a semaphore
- [sem\_timedwait](https://manual.cs50.io/3/sem_timedwait) - lock a semaphore
- [sem\_trywait](https://manual.cs50.io/3/sem_trywait) - lock a semaphore
- [sem\_unlink](https://manual.cs50.io/3/sem_unlink) - remove a named semaphore
- [sem\_wait](https://manual.cs50.io/3/sem_wait) - lock a semaphore
# [setjmp.h](https://manual.cs50.io/#setjmp.h)
- [longjmp](https://manual.cs50.io/3/longjmp) - performing a nonlocal goto
- [setjmp](https://manual.cs50.io/3/setjmp) - performing a nonlocal goto
- [siglongjmp](https://manual.cs50.io/3/siglongjmp) - performing a nonlocal goto
- [sigsetjmp](https://manual.cs50.io/3/sigsetjmp) - performing a nonlocal goto
# [signal.h](https://manual.cs50.io/#signal.h)
- [bsd\_signal](https://manual.cs50.io/3/bsd_signal) - signal handling with BSD semantics
- [gsignal](https://manual.cs50.io/3/gsignal) - software signal facility
- [kill](https://manual.cs50.io/2/kill) - send signal to a process
- [killpg](https://manual.cs50.io/3/killpg) - send signal to a process group
- [psiginfo](https://manual.cs50.io/3/psiginfo) - print signal description
- [psignal](https://manual.cs50.io/3/psignal) - print signal description
- [pthread\_kill](https://manual.cs50.io/3/pthread_kill) - send a signal to a thread
- [pthread\_sigmask](https://manual.cs50.io/3/pthread_sigmask) - examine and change mask of blocked signals
- [pthread\_sigqueue](https://manual.cs50.io/3/pthread_sigqueue) - queue a signal and data to a thread
- [raise](https://manual.cs50.io/3/raise) - send a signal to the caller
- [rt\_sigaction](https://manual.cs50.io/2/rt_sigaction) - examine and change a signal action
- [rt\_sigpending](https://manual.cs50.io/2/rt_sigpending) - examine pending signals
- [rt\_sigprocmask](https://manual.cs50.io/2/rt_sigprocmask) - examine and change blocked signals
- [rt\_sigsuspend](https://manual.cs50.io/2/rt_sigsuspend) - wait for a signal
- [rt\_sigtimedwait](https://manual.cs50.io/2/rt_sigtimedwait) - synchronously wait for queued signals
- [sigaction](https://manual.cs50.io/2/sigaction) - examine and change a signal action
- [sigaddset](https://manual.cs50.io/3/sigaddset) - POSIX signal set operations
- [sigaltstack](https://manual.cs50.io/2/sigaltstack) - set and/or get signal stack context
- [sigandset](https://manual.cs50.io/3/sigandset) - POSIX signal set operations
- [sigblock](https://manual.cs50.io/3/sigblock) - BSD signal API
- [sigdelset](https://manual.cs50.io/3/sigdelset) - POSIX signal set operations
- [sigemptyset](https://manual.cs50.io/3/sigemptyset) - POSIX signal set operations
- [sigfillset](https://manual.cs50.io/3/sigfillset) - POSIX signal set operations
- [siggetmask](https://manual.cs50.io/3/siggetmask) - BSD signal API
- [sighold](https://manual.cs50.io/3/sighold) - System V signal API
- [sigignore](https://manual.cs50.io/3/sigignore) - System V signal API
- [siginterrupt](https://manual.cs50.io/3/siginterrupt) - allow signals to interrupt system calls
- [sigisemptyset](https://manual.cs50.io/3/sigisemptyset) - POSIX signal set operations
- [sigismember](https://manual.cs50.io/3/sigismember) - POSIX signal set operations
- [sigmask](https://manual.cs50.io/3/sigmask) - BSD signal API
- [signal](https://manual.cs50.io/2/signal) - ANSI C signal handling
- [sigorset](https://manual.cs50.io/3/sigorset) - POSIX signal set operations
- [sigpause](https://manual.cs50.io/3/sigpause) - atomically release blocked signals and wait for interrupt
- [sigpending](https://manual.cs50.io/2/sigpending) - examine pending signals
- [sigprocmask](https://manual.cs50.io/2/sigprocmask) - examine and change blocked signals
- [sigqueue](https://manual.cs50.io/3/sigqueue) - queue a signal and data to a process
- [sigrelse](https://manual.cs50.io/3/sigrelse) - System V signal API
- [sigset](https://manual.cs50.io/3/sigset) - System V signal API
- [sigsetmask](https://manual.cs50.io/3/sigsetmask) - BSD signal API
- [sigsetops](https://manual.cs50.io/3/sigsetops) - POSIX signal set operations
- [sigstack](https://manual.cs50.io/3/sigstack) - set and/or get signal stack context
- [sigsuspend](https://manual.cs50.io/2/sigsuspend) - wait for a signal
- [sigtimedwait](https://manual.cs50.io/2/sigtimedwait) - synchronously wait for queued signals
- [sigvec](https://manual.cs50.io/3/sigvec) - BSD signal API
- [sigwait](https://manual.cs50.io/3/sigwait) - wait for a signal
- [sigwaitinfo](https://manual.cs50.io/2/sigwaitinfo) - synchronously wait for queued signals
- [ssignal](https://manual.cs50.io/3/ssignal) - software signal facility
- [sysv\_signal](https://manual.cs50.io/3/sysv_signal) - signal handling with System V semantics
# [spawn.h](https://manual.cs50.io/#spawn.h)
- [posix\_spawn](https://manual.cs50.io/3/posix_spawn) - spawn a process
- [posix\_spawnp](https://manual.cs50.io/3/posix_spawnp) - spawn a process
# [stdarg.h](https://manual.cs50.io/#stdarg.h)
- [stdarg](https://manual.cs50.io/3/stdarg) - variable argument lists
- [va\_arg](https://manual.cs50.io/3/va_arg) - variable argument lists
- [va\_copy](https://manual.cs50.io/3/va_copy) - variable argument lists
- [va\_end](https://manual.cs50.io/3/va_end) - variable argument lists
- [va\_start](https://manual.cs50.io/3/va_start) - variable argument lists
# [stddef.h](https://manual.cs50.io/#stddef.h)
- [offsetof](https://manual.cs50.io/3/offsetof) - offset of a structure member
- [wcstoimax](https://manual.cs50.io/3/wcstoimax) - convert wide-character string to integer
- [wcstoumax](https://manual.cs50.io/3/wcstoumax) - convert wide-character string to integer
# [stdio.h](https://manual.cs50.io/#stdio.h)
- [\_\_fbufsize](https://manual.cs50.io/3/__fbufsize) - interfaces to stdio FILE structure
- [\_\_flbf](https://manual.cs50.io/3/__flbf) - interfaces to stdio FILE structure
- [\_\_fpending](https://manual.cs50.io/3/__fpending) - interfaces to stdio FILE structure
- [\_\_fpurge](https://manual.cs50.io/3/__fpurge) - purge a stream
- [\_\_freadable](https://manual.cs50.io/3/__freadable) - interfaces to stdio FILE structure
- [\_\_freading](https://manual.cs50.io/3/__freading) - interfaces to stdio FILE structure
- [\_\_fsetlocking](https://manual.cs50.io/3/__fsetlocking) - interfaces to stdio FILE structure
- [\_\_fwritable](https://manual.cs50.io/3/__fwritable) - interfaces to stdio FILE structure
- [\_\_fwriting](https://manual.cs50.io/3/__fwriting) - interfaces to stdio FILE structure
- [\_flushlbf](https://manual.cs50.io/3/_flushlbf) - interfaces to stdio FILE structure
- [addmntent](https://manual.cs50.io/3/addmntent) - get filesystem descriptor file entry
- [asprintf](https://manual.cs50.io/3/asprintf) - print to allocated string
- [clearerr](https://manual.cs50.io/3/clearerr) - check and reset stream status
- [clearerr\_unlocked](https://manual.cs50.io/3/clearerr_unlocked) - nonlocking stdio functions
- [ctermid](https://manual.cs50.io/3/ctermid) - get controlling terminal name
- [dprintf](https://manual.cs50.io/3/dprintf) - formatted output conversion
- [endmntent](https://manual.cs50.io/3/endmntent) - get filesystem descriptor file entry
- [fclose](https://manual.cs50.io/3/fclose) - close a stream close a file
- [fcloseall](https://manual.cs50.io/3/fcloseall) - close all open streams
- [fdopen](https://manual.cs50.io/3/fdopen) - stream open functions
- [feof](https://manual.cs50.io/3/feof) - check and reset stream status
- [feof\_unlocked](https://manual.cs50.io/3/feof_unlocked) - nonlocking stdio functions
- [ferror](https://manual.cs50.io/3/ferror) - check and reset stream status
- [ferror\_unlocked](https://manual.cs50.io/3/ferror_unlocked) - nonlocking stdio functions
- [fflush](https://manual.cs50.io/3/fflush) - flush a stream
- [fflush\_unlocked](https://manual.cs50.io/3/fflush_unlocked) - nonlocking stdio functions
- [fgetc](https://manual.cs50.io/3/fgetc) - input of characters and strings
- [fgetc\_unlocked](https://manual.cs50.io/3/fgetc_unlocked) - nonlocking stdio functions
- [fgetgrent](https://manual.cs50.io/3/fgetgrent) - get group file entry
- [fgetpos](https://manual.cs50.io/3/fgetpos) - reposition a stream
- [fgetpwent](https://manual.cs50.io/3/fgetpwent) - get password file entry
- [fgets](https://manual.cs50.io/3/fgets) - input of characters and strings
- [fgets\_unlocked](https://manual.cs50.io/3/fgets_unlocked) - nonlocking stdio functions
- [fgetwc](https://manual.cs50.io/3/fgetwc) - read a wide character from a FILE stream
- [fgetwc\_unlocked](https://manual.cs50.io/3/fgetwc_unlocked) - nonlocking stdio functions
- [fgetws\_unlocked](https://manual.cs50.io/3/fgetws_unlocked) - nonlocking stdio functions
- [fileno](https://manual.cs50.io/3/fileno) - obtain file descriptor of a stdio stream
- [fileno\_unlocked](https://manual.cs50.io/3/fileno_unlocked) - nonlocking stdio functions
- [flockfile](https://manual.cs50.io/3/flockfile) - lock FILE for stdio
- [fmemopen](https://manual.cs50.io/3/fmemopen) - open memory as stream
- [fopen](https://manual.cs50.io/3/fopen) - stream open functions open a file
- [fopencookie](https://manual.cs50.io/3/fopencookie) - open a custom stream
- [fprintf](https://manual.cs50.io/3/fprintf) - formatted output conversion print to a file
- [fpurge](https://manual.cs50.io/3/fpurge) - purge a stream
- [fputc](https://manual.cs50.io/3/fputc) - output of characters and strings
- [fputc\_unlocked](https://manual.cs50.io/3/fputc_unlocked) - nonlocking stdio functions
- [fputs](https://manual.cs50.io/3/fputs) - output of characters and strings
- [fputs\_unlocked](https://manual.cs50.io/3/fputs_unlocked) - nonlocking stdio functions
- [fputwc](https://manual.cs50.io/3/fputwc) - write a wide character to a FILE stream
- [fputwc\_unlocked](https://manual.cs50.io/3/fputwc_unlocked) - nonlocking stdio functions
- [fputws\_unlocked](https://manual.cs50.io/3/fputws_unlocked) - nonlocking stdio functions
- [fread](https://manual.cs50.io/3/fread) - binary stream input/output read bytes from a file
- [fread\_unlocked](https://manual.cs50.io/3/fread_unlocked) - nonlocking stdio functions
- [freopen](https://manual.cs50.io/3/freopen) - stream open functions
- [fscanf](https://manual.cs50.io/3/fscanf) - input FILE format conversion get input from a file
- [fseek](https://manual.cs50.io/3/fseek) - reposition a stream
- [fseeko](https://manual.cs50.io/3/fseeko) - seek to or report file position
- [fsetpos](https://manual.cs50.io/3/fsetpos) - reposition a stream
- [ftell](https://manual.cs50.io/3/ftell) - reposition a stream
- [ftello](https://manual.cs50.io/3/ftello) - seek to or report file position
- [ftrylockfile](https://manual.cs50.io/3/ftrylockfile) - lock FILE for stdio
- [funlockfile](https://manual.cs50.io/3/funlockfile) - lock FILE for stdio
- [fwprintf](https://manual.cs50.io/3/fwprintf) - formatted wide-character output conversion
- [fwrite](https://manual.cs50.io/3/fwrite) - binary stream input/output write bytes to a file
- [fwrite\_unlocked](https://manual.cs50.io/3/fwrite_unlocked) - nonlocking stdio functions
- [getc](https://manual.cs50.io/3/getc) - input of characters and strings
- [getc\_unlocked](https://manual.cs50.io/3/getc_unlocked) - nonlocking stdio functions
- [getchar](https://manual.cs50.io/3/getchar) - input of characters and strings
- [getchar\_unlocked](https://manual.cs50.io/3/getchar_unlocked) - nonlocking stdio functions
- [getdelim](https://manual.cs50.io/3/getdelim) - delimited string input
- [getline](https://manual.cs50.io/3/getline) - delimited string input
- [getmntent](https://manual.cs50.io/3/getmntent) - get filesystem descriptor file entry
- [getmntent\_r](https://manual.cs50.io/3/getmntent_r) - get filesystem descriptor file entry
- [gets](https://manual.cs50.io/3/gets) - get a string from standard input (DEPRECATED)
- [getw](https://manual.cs50.io/3/getw) - input and output of words (ints)
- [getwc](https://manual.cs50.io/3/getwc) - read a wide character from a FILE stream
- [getwc\_unlocked](https://manual.cs50.io/3/getwc_unlocked) - nonlocking stdio functions
- [getwchar\_unlocked](https://manual.cs50.io/3/getwchar_unlocked) - nonlocking stdio functions
- [hasmntopt](https://manual.cs50.io/3/hasmntopt) - get filesystem descriptor file entry
- [open\_memstream](https://manual.cs50.io/3/open_memstream) - open a dynamic memory buffer stream
- [open\_wmemstream](https://manual.cs50.io/3/open_wmemstream) - open a dynamic memory buffer stream
- [pclose](https://manual.cs50.io/3/pclose) - pipe stream to or from a process
- [perror](https://manual.cs50.io/3/perror) - print a system error message
- [popen](https://manual.cs50.io/3/popen) - pipe stream to or from a process
- [printf](https://manual.cs50.io/3/printf) - formatted output conversion print to the screen
- [putc](https://manual.cs50.io/3/putc) - output of characters and strings
- [putc\_unlocked](https://manual.cs50.io/3/putc_unlocked) - nonlocking stdio functions
- [putchar](https://manual.cs50.io/3/putchar) - output of characters and strings
- [putchar\_unlocked](https://manual.cs50.io/3/putchar_unlocked) - nonlocking stdio functions
- [putpwent](https://manual.cs50.io/3/putpwent) - write a password file entry
- [puts](https://manual.cs50.io/3/puts) - output of characters and strings
- [putw](https://manual.cs50.io/3/putw) - input and output of words (ints)
- [putwc](https://manual.cs50.io/3/putwc) - write a wide character to a FILE stream
- [putwc\_unlocked](https://manual.cs50.io/3/putwc_unlocked) - nonlocking stdio functions
- [putwchar\_unlocked](https://manual.cs50.io/3/putwchar_unlocked) - nonlocking stdio functions
- [remove](https://manual.cs50.io/3/remove) - remove a file or directory
- [rename](https://manual.cs50.io/2/rename) - change the name or location of a file
- [renameat](https://manual.cs50.io/2/renameat) - change the name or location of a file
- [renameat2](https://manual.cs50.io/2/renameat2) - change the name or location of a file
- [rewind](https://manual.cs50.io/3/rewind) - reposition a stream
- [scanf](https://manual.cs50.io/3/scanf) - input FILE format conversion get input from a user
- [setbuf](https://manual.cs50.io/3/setbuf) - stream buffering operations
- [setbuffer](https://manual.cs50.io/3/setbuffer) - stream buffering operations
- [setlinebuf](https://manual.cs50.io/3/setlinebuf) - stream buffering operations
- [setmntent](https://manual.cs50.io/3/setmntent) - get filesystem descriptor file entry
- [setvbuf](https://manual.cs50.io/3/setvbuf) - stream buffering operations
- [snprintf](https://manual.cs50.io/3/snprintf) - formatted output conversion
- [sprintf](https://manual.cs50.io/3/sprintf) - formatted output conversion print to a string
- [sscanf](https://manual.cs50.io/3/sscanf) - input string format conversion
- [stderr](https://manual.cs50.io/3/stderr) - standard I/O streams
- [stdin](https://manual.cs50.io/3/stdin) - standard I/O streams
- [stdio](https://manual.cs50.io/3/stdio) - standard input/output library functions
- [stdio\_ext](https://manual.cs50.io/3/stdio_ext) - interfaces to stdio FILE structure
- [stdout](https://manual.cs50.io/3/stdout) - standard I/O streams
- [swprintf](https://manual.cs50.io/3/swprintf) - formatted wide-character output conversion
- [sys\_errlist](https://manual.cs50.io/3/sys_errlist) - print a system error message
- [sys\_nerr](https://manual.cs50.io/3/sys_nerr) - print a system error message
- [tempnam](https://manual.cs50.io/3/tempnam) - create a name for a temporary file
- [tmpfile](https://manual.cs50.io/3/tmpfile) - create a temporary file
- [tmpnam](https://manual.cs50.io/3/tmpnam) - create a name for a temporary file
- [tmpnam\_r](https://manual.cs50.io/3/tmpnam_r) - create a name for a temporary file
- [ungetc](https://manual.cs50.io/3/ungetc) - input of characters and strings
- [unlocked\_stdio](https://manual.cs50.io/3/unlocked_stdio) - nonlocking stdio functions
- [vasprintf](https://manual.cs50.io/3/vasprintf) - print to allocated string
- [vdprintf](https://manual.cs50.io/3/vdprintf) - formatted output conversion
- [vfprintf](https://manual.cs50.io/3/vfprintf) - formatted output conversion
- [vfscanf](https://manual.cs50.io/3/vfscanf) - input FILE format conversion
- [vfwprintf](https://manual.cs50.io/3/vfwprintf) - formatted wide-character output conversion
- [vprintf](https://manual.cs50.io/3/vprintf) - formatted output conversion
- [vscanf](https://manual.cs50.io/3/vscanf) - input FILE format conversion
- [vsnprintf](https://manual.cs50.io/3/vsnprintf) - formatted output conversion
- [vsprintf](https://manual.cs50.io/3/vsprintf) - formatted output conversion
- [vsscanf](https://manual.cs50.io/3/vsscanf) - input string format conversion
- [vswprintf](https://manual.cs50.io/3/vswprintf) - formatted wide-character output conversion
- [vwprintf](https://manual.cs50.io/3/vwprintf) - formatted wide-character output conversion
- [wprintf](https://manual.cs50.io/3/wprintf) - formatted wide-character output conversion
# [stdlib.h](https://manual.cs50.io/#stdlib.h)
- [a64l](https://manual.cs50.io/3/a64l) - convert between long and base-64
- [abort](https://manual.cs50.io/3/abort) - cause abnormal process termination
- [abs](https://manual.cs50.io/3/abs) - compute the absolute value of an integer
- [aligned\_alloc](https://manual.cs50.io/3/aligned_alloc) - allocate aligned memory
- [arc4random](https://manual.cs50.io/3/arc4random) - cryptographically-secure pseudorandom number generator
- [arc4random\_buf](https://manual.cs50.io/3/arc4random_buf) - cryptographically-secure pseudorandom number generator
- [arc4random\_uniform](https://manual.cs50.io/3/arc4random_uniform) - cryptographically-secure pseudorandom number generator
- [atexit](https://manual.cs50.io/3/atexit) - register a function to be called at normal process ter...
- [atof](https://manual.cs50.io/3/atof) - convert a string to a double convert a `string` to a `float`
- [atoi](https://manual.cs50.io/3/atoi) - convert a string to an integer convert a `string` to an `int`
- [atol](https://manual.cs50.io/3/atol) - convert a string to an integer convert a `string` to a `long`
- [atoll](https://manual.cs50.io/3/atoll) - convert a string to an integer
- [atoq](https://manual.cs50.io/3/atoq) - convert a string to an integer
- [bsearch](https://manual.cs50.io/3/bsearch) - binary search of a sorted array
- [calloc](https://manual.cs50.io/3/calloc) - allocate and free dynamic memory
- [canonicalize\_file\_name](https://manual.cs50.io/3/canonicalize_file_name) - return the canonicalized absolute pathname
- [cfree](https://manual.cs50.io/3/cfree) - free allocated memory
- [clearenv](https://manual.cs50.io/3/clearenv) - clear the environment
- [div](https://manual.cs50.io/3/div) - compute quotient and remainder of an integer division
- [drand48](https://manual.cs50.io/3/drand48) - generate uniformly distributed pseudo-random numbers
- [drand48\_r](https://manual.cs50.io/3/drand48_r) - generate uniformly distributed pseudo-random numbers r...
- [ecvt](https://manual.cs50.io/3/ecvt) - convert a floating-point number to a string
- [ecvt\_r](https://manual.cs50.io/3/ecvt_r) - convert a floating-point number to a string
- [erand48](https://manual.cs50.io/3/erand48) - generate uniformly distributed pseudo-random numbers
- [erand48\_r](https://manual.cs50.io/3/erand48_r) - generate uniformly distributed pseudo-random numbers r...
- [exit](https://manual.cs50.io/3/exit) - cause normal process termination
- [fcvt](https://manual.cs50.io/3/fcvt) - convert a floating-point number to a string
- [fcvt\_r](https://manual.cs50.io/3/fcvt_r) - convert a floating-point number to a string
- [free](https://manual.cs50.io/3/free) - allocate and free dynamic memory free dynamically allocated memory
- [gcvt](https://manual.cs50.io/3/gcvt) - convert a floating-point number to a string
- [getenv](https://manual.cs50.io/3/getenv) - get an environment variable
- [getloadavg](https://manual.cs50.io/3/getloadavg) - get system load averages
- [getpt](https://manual.cs50.io/3/getpt) - open a new pseudoterminal master
- [getsubopt](https://manual.cs50.io/3/getsubopt) - parse suboption arguments from a string
- [grantpt](https://manual.cs50.io/3/grantpt) - grant access to the slave pseudoterminal
- [imaxabs](https://manual.cs50.io/3/imaxabs) - compute the absolute value of an integer
- [imaxdiv](https://manual.cs50.io/3/imaxdiv) - compute quotient and remainder of an integer division
- [initstate](https://manual.cs50.io/3/initstate) - random number generator
- [initstate\_r](https://manual.cs50.io/3/initstate_r) - reentrant random number generator
- [jrand48](https://manual.cs50.io/3/jrand48) - generate uniformly distributed pseudo-random numbers
- [jrand48\_r](https://manual.cs50.io/3/jrand48_r) - generate uniformly distributed pseudo-random numbers r...
- [l64a](https://manual.cs50.io/3/l64a) - convert between long and base-64
- [labs](https://manual.cs50.io/3/labs) - compute the absolute value of an integer
- [lcong48](https://manual.cs50.io/3/lcong48) - generate uniformly distributed pseudo-random numbers
- [lcong48\_r](https://manual.cs50.io/3/lcong48_r) - generate uniformly distributed pseudo-random numbers r...
- [ldiv](https://manual.cs50.io/3/ldiv) - compute quotient and remainder of an integer division
- [llabs](https://manual.cs50.io/3/llabs) - compute the absolute value of an integer
- [lldiv](https://manual.cs50.io/3/lldiv) - compute quotient and remainder of an integer division
- [lrand48](https://manual.cs50.io/3/lrand48) - generate uniformly distributed pseudo-random numbers
- [lrand48\_r](https://manual.cs50.io/3/lrand48_r) - generate uniformly distributed pseudo-random numbers r...
- [malloc](https://manual.cs50.io/3/malloc) - allocate and free dynamic memory allocate memory dynamically
- [MB\_CUR\_MAX](https://manual.cs50.io/3/MB_CUR_MAX) - maximum length of a multibyte character in the current...
- [mblen](https://manual.cs50.io/3/mblen) - determine number of bytes in next multibyte character
- [mbstowcs](https://manual.cs50.io/3/mbstowcs) - convert a multibyte string to a wide-character string
- [mbtowc](https://manual.cs50.io/3/mbtowc) - convert a multibyte sequence to a wide character
- [memalign](https://manual.cs50.io/3/memalign) - allocate aligned memory
- [mkdtemp](https://manual.cs50.io/3/mkdtemp) - create a unique temporary directory
- [mkostemp](https://manual.cs50.io/3/mkostemp) - create a unique temporary file
- [mkostemps](https://manual.cs50.io/3/mkostemps) - create a unique temporary file
- [mkstemp](https://manual.cs50.io/3/mkstemp) - create a unique temporary file
- [mkstemps](https://manual.cs50.io/3/mkstemps) - create a unique temporary file
- [mktemp](https://manual.cs50.io/3/mktemp) - make a unique temporary filename
- [mrand48](https://manual.cs50.io/3/mrand48) - generate uniformly distributed pseudo-random numbers
- [mrand48\_r](https://manual.cs50.io/3/mrand48_r) - generate uniformly distributed pseudo-random numbers r...
- [nrand48](https://manual.cs50.io/3/nrand48) - generate uniformly distributed pseudo-random numbers
- [nrand48\_r](https://manual.cs50.io/3/nrand48_r) - generate uniformly distributed pseudo-random numbers r...
- [on\_exit](https://manual.cs50.io/3/on_exit) - register a function to be called at normal process ter...
- [posix\_memalign](https://manual.cs50.io/3/posix_memalign) - allocate aligned memory
- [posix\_openpt](https://manual.cs50.io/3/posix_openpt) - open a pseudoterminal device
- [ptsname](https://manual.cs50.io/3/ptsname) - get the name of the slave pseudoterminal
- [ptsname\_r](https://manual.cs50.io/3/ptsname_r) - get the name of the slave pseudoterminal
- [putenv](https://manual.cs50.io/3/putenv) - change or add an environment variable
- [pvalloc](https://manual.cs50.io/3/pvalloc) - allocate aligned memory
- [qecvt](https://manual.cs50.io/3/qecvt) - convert a floating-point number to a string
- [qecvt\_r](https://manual.cs50.io/3/qecvt_r) - convert a floating-point number to a string
- [qfcvt](https://manual.cs50.io/3/qfcvt) - convert a floating-point number to a string
- [qfcvt\_r](https://manual.cs50.io/3/qfcvt_r) - convert a floating-point number to a string
- [qgcvt](https://manual.cs50.io/3/qgcvt) - convert a floating-point number to a string
- [qsort](https://manual.cs50.io/3/qsort) - sort an array
- [qsort\_r](https://manual.cs50.io/3/qsort_r) - sort an array
- [rand](https://manual.cs50.io/3/rand) - pseudo-random number generator
- [rand\_r](https://manual.cs50.io/3/rand_r) - pseudo-random number generator
- [random](https://manual.cs50.io/3/random) - random number generator generate a pseudorandom number
- [random\_r](https://manual.cs50.io/3/random_r) - reentrant random number generator
- [realloc](https://manual.cs50.io/3/realloc) - allocate and free dynamic memory reallocate memory dynamically
- [reallocarray](https://manual.cs50.io/3/reallocarray) - allocate and free dynamic memory
- [rpmatch](https://manual.cs50.io/3/rpmatch) - determine if the answer to a question is affirmative o...
- [secure\_getenv](https://manual.cs50.io/3/secure_getenv) - get an environment variable
- [seed48](https://manual.cs50.io/3/seed48) - generate uniformly distributed pseudo-random numbers
- [seed48\_r](https://manual.cs50.io/3/seed48_r) - generate uniformly distributed pseudo-random numbers r...
- [setenv](https://manual.cs50.io/3/setenv) - change or add an environment variable
- [setstate](https://manual.cs50.io/3/setstate) - random number generator
- [setstate\_r](https://manual.cs50.io/3/setstate_r) - reentrant random number generator
- [srand](https://manual.cs50.io/3/srand) - pseudo-random number generator
- [srand48](https://manual.cs50.io/3/srand48) - generate uniformly distributed pseudo-random numbers
- [srand48\_r](https://manual.cs50.io/3/srand48_r) - generate uniformly distributed pseudo-random numbers r...
- [srandom](https://manual.cs50.io/3/srandom) - random number generator seed pseudorandom number generation
- [srandom\_r](https://manual.cs50.io/3/srandom_r) - reentrant random number generator
- [strfromd](https://manual.cs50.io/3/strfromd) - convert a floating-point value into a string
- [strfromf](https://manual.cs50.io/3/strfromf) - convert a floating-point value into a string
- [strfroml](https://manual.cs50.io/3/strfroml) - convert a floating-point value into a string
- [strtod](https://manual.cs50.io/3/strtod) - convert ASCII string to floating-point number
- [strtof](https://manual.cs50.io/3/strtof) - convert ASCII string to floating-point number
- [strtol](https://manual.cs50.io/3/strtol) - convert a string to a long integer
- [strtold](https://manual.cs50.io/3/strtold) - convert ASCII string to floating-point number
- [strtoll](https://manual.cs50.io/3/strtoll) - convert a string to a long integer
- [strtoq](https://manual.cs50.io/3/strtoq) - convert a string to a long integer
- [strtoul](https://manual.cs50.io/3/strtoul) - convert a string to an unsigned long integer
- [strtoull](https://manual.cs50.io/3/strtoull) - convert a string to an unsigned long integer
- [strtouq](https://manual.cs50.io/3/strtouq) - convert a string to an unsigned long integer
- [system](https://manual.cs50.io/3/system) - execute a shell command
- [unlockpt](https://manual.cs50.io/3/unlockpt) - unlock a pseudoterminal master/slave pair
- [unsetenv](https://manual.cs50.io/3/unsetenv) - change or add an environment variable
- [valloc](https://manual.cs50.io/3/valloc) - allocate aligned memory
- [wcstombs](https://manual.cs50.io/3/wcstombs) - convert a wide-character string to a multibyte string
- [wctomb](https://manual.cs50.io/3/wctomb) - convert a wide character to a multibyte sequence
# [string.h](https://manual.cs50.io/#string.h)
- [bstring](https://manual.cs50.io/3/bstring) - byte string operations
- [memccpy](https://manual.cs50.io/3/memccpy) - copy memory area
- [memchr](https://manual.cs50.io/3/memchr) - scan memory for a character
- [memcmp](https://manual.cs50.io/3/memcmp) - compare memory areas
- [memcpy](https://manual.cs50.io/3/memcpy) - copy memory area
- [memfrob](https://manual.cs50.io/3/memfrob) - frobnicate (obfuscate) a memory area
- [memmem](https://manual.cs50.io/3/memmem) - locate a substring
- [memmove](https://manual.cs50.io/3/memmove) - copy memory area
- [mempcpy](https://manual.cs50.io/3/mempcpy) - copy memory area
- [memrchr](https://manual.cs50.io/3/memrchr) - scan memory for a character
- [memset](https://manual.cs50.io/3/memset) - fill memory with a constant byte
- [rawmemchr](https://manual.cs50.io/3/rawmemchr) - scan memory for a character
- [sigabbrev\_np](https://manual.cs50.io/3/sigabbrev_np) - return string describing signal
- [sigdescr\_np](https://manual.cs50.io/3/sigdescr_np) - return string describing signal
- [stpcpy](https://manual.cs50.io/3/stpcpy) - copy or catenate a string
- [stpncpy](https://manual.cs50.io/3/stpncpy) - fill a fixed-size buffer with non-null bytes from a st...
- [strcasestr](https://manual.cs50.io/3/strcasestr) - locate a substring locate a substring
- [strcat](https://manual.cs50.io/3/strcat) - copy or catenate a string
- [strchr](https://manual.cs50.io/3/strchr) - locate character in string
- [strchrnul](https://manual.cs50.io/3/strchrnul) - locate character in string
- [strcmp](https://manual.cs50.io/3/strcmp) - compare two strings compare two strings
- [strcoll](https://manual.cs50.io/3/strcoll) - compare two strings using the current locale
- [strcpy](https://manual.cs50.io/3/strcpy) - copy or catenate a string copy a string
- [strcspn](https://manual.cs50.io/3/strcspn) - get length of a prefix substring
- [strdup](https://manual.cs50.io/3/strdup) - duplicate a string
- [strdupa](https://manual.cs50.io/3/strdupa) - duplicate a string
- [strerror](https://manual.cs50.io/3/strerror) - return string describing error number
- [strerror\_l](https://manual.cs50.io/3/strerror_l) - return string describing error number
- [strerror\_r](https://manual.cs50.io/3/strerror_r) - return string describing error number
- [strerrordesc\_np](https://manual.cs50.io/3/strerrordesc_np) - return string describing error number
- [strerrorname\_np](https://manual.cs50.io/3/strerrorname_np) - return string describing error number
- [strfry](https://manual.cs50.io/3/strfry) - randomize a string
- [strlen](https://manual.cs50.io/3/strlen) - calculate the length of a string calculate the length of a string
- [strncat](https://manual.cs50.io/3/strncat) - append non-null bytes from a source array to a string,...
- [strncmp](https://manual.cs50.io/3/strncmp) - compare two strings
- [strncpy](https://manual.cs50.io/3/strncpy) - fill a fixed-size buffer with non-null bytes from a st...
- [strndup](https://manual.cs50.io/3/strndup) - duplicate a string
- [strndupa](https://manual.cs50.io/3/strndupa) - duplicate a string
- [strnlen](https://manual.cs50.io/3/strnlen) - determine the length of a fixed-size string
- [strpbrk](https://manual.cs50.io/3/strpbrk) - search a string for any of a set of bytes
- [strrchr](https://manual.cs50.io/3/strrchr) - locate character in string
- [strsep](https://manual.cs50.io/3/strsep) - extract token from string
- [strsignal](https://manual.cs50.io/3/strsignal) - return string describing signal
- [strspn](https://manual.cs50.io/3/strspn) - get length of a prefix substring
- [strstr](https://manual.cs50.io/3/strstr) - locate a substring locate a substring
- [strtok](https://manual.cs50.io/3/strtok) - extract tokens from strings
- [strtok\_r](https://manual.cs50.io/3/strtok_r) - extract tokens from strings
- [strverscmp](https://manual.cs50.io/3/strverscmp) - compare two version strings
- [strxfrm](https://manual.cs50.io/3/strxfrm) - string transformation
- [sys\_siglist](https://manual.cs50.io/3/sys_siglist) - return string describing signal
- [wmempcpy](https://manual.cs50.io/3/wmempcpy) - copy memory area
# [strings.h](https://manual.cs50.io/#strings.h)
- [bcmp](https://manual.cs50.io/3/bcmp) - compare byte sequences
- [bcopy](https://manual.cs50.io/3/bcopy) - copy byte sequence
- [bzero](https://manual.cs50.io/3/bzero) - zero a byte string
- [explicit\_bzero](https://manual.cs50.io/3/explicit_bzero) - zero a byte string
- [ffs](https://manual.cs50.io/3/ffs) - find first bit set in a word
- [ffsl](https://manual.cs50.io/3/ffsl) - find first bit set in a word
- [ffsll](https://manual.cs50.io/3/ffsll) - find first bit set in a word
- [index](https://manual.cs50.io/3/index) - locate character in string
- [rindex](https://manual.cs50.io/3/rindex) - locate character in string
- [strcasecmp](https://manual.cs50.io/3/strcasecmp) - compare two strings ignoring case compare two strings ignoring case
- [string](https://manual.cs50.io/3/string) - string operations
- [strncasecmp](https://manual.cs50.io/3/strncasecmp) - compare two strings ignoring case
# [sys/ipc.h](https://manual.cs50.io/#sys/ipc.h)
- [ftok](https://manual.cs50.io/3/ftok) - convert a pathname and a project identifier to a Syste...
# [sys/mman.h](https://manual.cs50.io/#sys/mman.h)
- [madvise](https://manual.cs50.io/2/madvise) - give advice about use of memory
- [memfd\_create](https://manual.cs50.io/2/memfd_create) - create an anonymous file
- [mincore](https://manual.cs50.io/2/mincore) - determine whether pages are resident in memory
- [mlock](https://manual.cs50.io/2/mlock) - lock and unlock memory
- [mlock2](https://manual.cs50.io/2/mlock2) - lock and unlock memory
- [mlockall](https://manual.cs50.io/2/mlockall) - lock and unlock memory
- [mmap](https://manual.cs50.io/2/mmap) - map or unmap files or devices into memory
- [mmap64](https://manual.cs50.io/3/mmap64) - map or unmap files or devices into memory
- [mprotect](https://manual.cs50.io/2/mprotect) - set protection on a region of memory
- [mremap](https://manual.cs50.io/2/mremap) - remap a virtual memory address
- [msync](https://manual.cs50.io/2/msync) - synchronize a file with a memory map
- [munlock](https://manual.cs50.io/2/munlock) - lock and unlock memory
- [munlockall](https://manual.cs50.io/2/munlockall) - lock and unlock memory
- [munmap](https://manual.cs50.io/2/munmap) - map or unmap files or devices into memory
- [pkey\_alloc](https://manual.cs50.io/2/pkey_alloc) - allocate or free a protection key
- [pkey\_free](https://manual.cs50.io/2/pkey_free) - allocate or free a protection key
- [pkey\_mprotect](https://manual.cs50.io/2/pkey_mprotect) - set protection on a region of memory
- [posix\_madvise](https://manual.cs50.io/3/posix_madvise) - give advice about patterns of memory usage
- [process\_madvise](https://manual.cs50.io/2/process_madvise) - give advice about use of memory to a process
- [remap\_file\_pages](https://manual.cs50.io/2/remap_file_pages) - create a nonlinear file mapping
- [shm\_open](https://manual.cs50.io/3/shm_open) - create/open or unlink POSIX shared memory objects
- [shm\_unlink](https://manual.cs50.io/3/shm_unlink) - create/open or unlink POSIX shared memory objects
# [sys/msg.h](https://manual.cs50.io/#sys/msg.h)
- [msgctl](https://manual.cs50.io/2/msgctl) - System V message control operations
- [msgget](https://manual.cs50.io/2/msgget) - get a System V message queue identifier
- [msgop](https://manual.cs50.io/2/msgop) - System V message queue operations
- [msgrcv](https://manual.cs50.io/2/msgrcv) - System V message queue operations
- [msgsnd](https://manual.cs50.io/2/msgsnd) - System V message queue operations
# [sys/resource.h](https://manual.cs50.io/#sys/resource.h)
- [getpriority](https://manual.cs50.io/2/getpriority) - get/set program scheduling priority
- [getrlimit](https://manual.cs50.io/2/getrlimit) - get/set resource limits
- [getrusage](https://manual.cs50.io/2/getrusage) - get resource usage
- [prlimit](https://manual.cs50.io/2/prlimit) - get/set resource limits
- [prlimit64](https://manual.cs50.io/2/prlimit64) - get/set resource limits
- [setpriority](https://manual.cs50.io/2/setpriority) - get/set program scheduling priority
- [setrlimit](https://manual.cs50.io/2/setrlimit) - get/set resource limits
- [ugetrlimit](https://manual.cs50.io/2/ugetrlimit) - get/set resource limits
- [vlimit](https://manual.cs50.io/3/vlimit) - get/set resource limits
- [vtimes](https://manual.cs50.io/3/vtimes) - get resource usage
# [sys/select.h](https://manual.cs50.io/#sys/select.h)
- [\_newselect](https://manual.cs50.io/2/_newselect) - synchronous I/O multiplexing
- [FD\_CLR](https://manual.cs50.io/3/FD_CLR) - synchronous I/O multiplexing
- [FD\_ISSET](https://manual.cs50.io/3/FD_ISSET) - synchronous I/O multiplexing
- [FD\_SET](https://manual.cs50.io/3/FD_SET) - synchronous I/O multiplexing
- [FD\_ZERO](https://manual.cs50.io/3/FD_ZERO) - synchronous I/O multiplexing
- [pselect](https://manual.cs50.io/2/pselect) - synchronous I/O multiplexing
- [pselect6](https://manual.cs50.io/2/pselect6) - synchronous I/O multiplexing
- [select](https://manual.cs50.io/2/select) - synchronous I/O multiplexing
# [sys/sem.h](https://manual.cs50.io/#sys/sem.h)
- [semctl](https://manual.cs50.io/2/semctl) - System V semaphore control operations
- [semget](https://manual.cs50.io/2/semget) - get a System V semaphore set identifier
- [semop](https://manual.cs50.io/2/semop) - System V semaphore operations
- [semtimedop](https://manual.cs50.io/2/semtimedop) - System V semaphore operations
# [sys/shm.h](https://manual.cs50.io/#sys/shm.h)
- [shmat](https://manual.cs50.io/2/shmat) - System V shared memory operations
- [shmctl](https://manual.cs50.io/2/shmctl) - System V shared memory control
- [shmdt](https://manual.cs50.io/2/shmdt) - System V shared memory operations
- [shmget](https://manual.cs50.io/2/shmget) - allocates a System V shared memory segment
- [shmop](https://manual.cs50.io/2/shmop) - System V shared memory operations
# [sys/socket.h](https://manual.cs50.io/#sys/socket.h)
- [accept](https://manual.cs50.io/2/accept) - accept a connection on a socket
- [accept4](https://manual.cs50.io/2/accept4) - accept a connection on a socket
- [address\_families](https://manual.cs50.io/7/address_families) - socket address families (domains)
- [bind](https://manual.cs50.io/2/bind) - bind a name to a socket
- [cmsg](https://manual.cs50.io/3/cmsg) - access ancillary data
- [CMSG\_ALIGN](https://manual.cs50.io/3/CMSG_ALIGN) - access ancillary data
- [CMSG\_DATA](https://manual.cs50.io/3/CMSG_DATA) - access ancillary data
- [CMSG\_FIRSTHDR](https://manual.cs50.io/3/CMSG_FIRSTHDR) - access ancillary data
- [CMSG\_LEN](https://manual.cs50.io/3/CMSG_LEN) - access ancillary data
- [CMSG\_NXTHDR](https://manual.cs50.io/3/CMSG_NXTHDR) - access ancillary data
- [CMSG\_SPACE](https://manual.cs50.io/3/CMSG_SPACE) - access ancillary data
- [connect](https://manual.cs50.io/2/connect) - initiate a connection on a socket
- [ddp](https://manual.cs50.io/7/ddp) - Linux AppleTalk protocol implementation
- [getnameinfo](https://manual.cs50.io/3/getnameinfo) - address-to-name translation in protocol-independent ma...
- [getpeername](https://manual.cs50.io/2/getpeername) - get name of connected peer socket
- [getsockname](https://manual.cs50.io/2/getsockname) - get socket name
- [getsockopt](https://manual.cs50.io/2/getsockopt) - get and set options on sockets
- [inet](https://manual.cs50.io/3/inet) - Internet address manipulation routines
- [inet\_addr](https://manual.cs50.io/3/inet_addr) - Internet address manipulation routines
- [inet\_aton](https://manual.cs50.io/3/inet_aton) - Internet address manipulation routines
- [inet\_lnaof](https://manual.cs50.io/3/inet_lnaof) - Internet address manipulation routines
- [inet\_makeaddr](https://manual.cs50.io/3/inet_makeaddr) - Internet address manipulation routines
- [inet\_netof](https://manual.cs50.io/3/inet_netof) - Internet address manipulation routines
- [inet\_network](https://manual.cs50.io/3/inet_network) - Internet address manipulation routines
- [inet\_ntoa](https://manual.cs50.io/3/inet_ntoa) - Internet address manipulation routines
- [ip](https://manual.cs50.io/7/ip) - Linux IPv4 protocol implementation
- [ipv6](https://manual.cs50.io/7/ipv6) - Linux IPv6 protocol implementation
- [listen](https://manual.cs50.io/2/listen) - listen for connections on a socket
- [packet](https://manual.cs50.io/7/packet) - packet interface on device level
- [raw](https://manual.cs50.io/7/raw) - Linux IPv4 raw sockets
- [recv](https://manual.cs50.io/2/recv) - receive a message from a socket
- [recvfrom](https://manual.cs50.io/2/recvfrom) - receive a message from a socket
- [recvmmsg](https://manual.cs50.io/2/recvmmsg) - receive multiple messages on a socket
- [recvmsg](https://manual.cs50.io/2/recvmsg) - receive a message from a socket
- [send](https://manual.cs50.io/2/send) - send a message on a socket
- [sendmmsg](https://manual.cs50.io/2/sendmmsg) - send multiple messages on a socket
- [sendmsg](https://manual.cs50.io/2/sendmsg) - send a message on a socket
- [sendto](https://manual.cs50.io/2/sendto) - send a message on a socket
- [setsockopt](https://manual.cs50.io/2/setsockopt) - get and set options on sockets
- [shutdown](https://manual.cs50.io/2/shutdown) - shut down part of a full-duplex connection
- [sock\_diag](https://manual.cs50.io/7/sock_diag) - obtaining information about sockets
- [sockatmark](https://manual.cs50.io/3/sockatmark) - determine whether socket is at out-of-band mark
- [socket](https://manual.cs50.io/2/socket) - create an endpoint for communication
- [socket](https://manual.cs50.io/7/socket) - Linux socket interface
- [socketpair](https://manual.cs50.io/2/socketpair) - create a pair of connected sockets
- [tcp](https://manual.cs50.io/7/tcp) - TCP protocol
- [udp](https://manual.cs50.io/7/udp) - User Datagram Protocol for IPv4
- [udplite](https://manual.cs50.io/7/udplite) - Lightweight User Datagram Protocol
- [unix](https://manual.cs50.io/7/unix) - sockets for local interprocess communication
- [vsock](https://manual.cs50.io/7/vsock) - Linux VSOCK address family
- [x25](https://manual.cs50.io/7/x25) - ITU-T X.25 / ISO/IEC 8208 protocol interface
# [sys/stat.h](https://manual.cs50.io/#sys/stat.h)
- [chmod](https://manual.cs50.io/2/chmod) - change permissions of a file
- [fchmod](https://manual.cs50.io/2/fchmod) - change permissions of a file
- [fchmodat](https://manual.cs50.io/2/fchmodat) - change permissions of a file
- [fstat](https://manual.cs50.io/2/fstat) - get file status
- [fstat64](https://manual.cs50.io/2/fstat64) - get file status
- [fstatat](https://manual.cs50.io/2/fstatat) - get file status
- [fstatat64](https://manual.cs50.io/2/fstatat64) - get file status
- [futimens](https://manual.cs50.io/3/futimens) - change file timestamps with nanosecond precision
- [isfdtype](https://manual.cs50.io/3/isfdtype) - test file type of a file descriptor
- [lstat](https://manual.cs50.io/2/lstat) - get file status
- [lstat64](https://manual.cs50.io/2/lstat64) - get file status
- [mkdir](https://manual.cs50.io/2/mkdir) - create a directory
- [mkdirat](https://manual.cs50.io/2/mkdirat) - create a directory
- [mknod](https://manual.cs50.io/2/mknod) - create a special or ordinary file
- [mknodat](https://manual.cs50.io/2/mknodat) - create a special or ordinary file
- [newfstatat](https://manual.cs50.io/2/newfstatat) - get file status
- [oldfstat](https://manual.cs50.io/2/oldfstat) - get file status
- [oldlstat](https://manual.cs50.io/2/oldlstat) - get file status
- [oldstat](https://manual.cs50.io/2/oldstat) - get file status
- [stat](https://manual.cs50.io/2/stat) - get file status
- [stat64](https://manual.cs50.io/2/stat64) - get file status
- [statx](https://manual.cs50.io/2/statx) - get file status (extended)
- [umask](https://manual.cs50.io/2/umask) - set file mode creation mask
- [utimensat](https://manual.cs50.io/2/utimensat) - change file timestamps with nanosecond precision
# [sys/statvfs.h](https://manual.cs50.io/#sys/statvfs.h)
- [fstatvfs](https://manual.cs50.io/3/fstatvfs) - get filesystem statistics
- [statvfs](https://manual.cs50.io/3/statvfs) - get filesystem statistics
# [sys/time.h](https://manual.cs50.io/#sys/time.h)
- [adjtime](https://manual.cs50.io/3/adjtime) - correct the time to synchronize the system clock
- [futimes](https://manual.cs50.io/3/futimes) - change file timestamps
- [futimesat](https://manual.cs50.io/2/futimesat) - change timestamps of a file relative to a directory fi...
- [getitimer](https://manual.cs50.io/2/getitimer) - get or set value of an interval timer
- [gettimeofday](https://manual.cs50.io/2/gettimeofday) - get / set time
- [lutimes](https://manual.cs50.io/3/lutimes) - change file timestamps
- [setitimer](https://manual.cs50.io/2/setitimer) - get or set value of an interval timer
- [settimeofday](https://manual.cs50.io/2/settimeofday) - get / set time
- [timeradd](https://manual.cs50.io/3/timeradd) - timeval operations
- [timerclear](https://manual.cs50.io/3/timerclear) - timeval operations
- [timercmp](https://manual.cs50.io/3/timercmp) - timeval operations
- [timerisset](https://manual.cs50.io/3/timerisset) - timeval operations
- [timersub](https://manual.cs50.io/3/timersub) - timeval operations
- [TIMESPEC\_TO\_TIMEVAL](https://manual.cs50.io/3/TIMESPEC_TO_TIMEVAL) - convert between time structures
- [TIMEVAL\_TO\_TIMESPEC](https://manual.cs50.io/3/TIMEVAL_TO_TIMESPEC) - convert between time structures
# [sys/times.h](https://manual.cs50.io/#sys/times.h)
- [times](https://manual.cs50.io/2/times) - get process times
# [sys/types.h](https://manual.cs50.io/#sys/types.h)
- [bindresvport](https://manual.cs50.io/3/bindresvport) - bind a socket to a privileged IP port
- [closedir](https://manual.cs50.io/3/closedir) - close a directory
- [db](https://manual.cs50.io/3/db) - database access methods
- [dbopen](https://manual.cs50.io/3/dbopen) - database access methods
- [dirfd](https://manual.cs50.io/3/dirfd) - get directory stream file descriptor
- [endgrent](https://manual.cs50.io/3/endgrent) - get group file entry
- [endpwent](https://manual.cs50.io/3/endpwent) - get password file entry
- [fdopendir](https://manual.cs50.io/3/fdopendir) - open a directory
- [freeaddrinfo](https://manual.cs50.io/3/freeaddrinfo) - network address and service translation
- [freehostent](https://manual.cs50.io/3/freehostent) - get network hostnames and addresses
- [freeifaddrs](https://manual.cs50.io/3/freeifaddrs) - get interface addresses
- [fts](https://manual.cs50.io/3/fts) - traverse a file hierarchy
- [fts\_children](https://manual.cs50.io/3/fts_children) - traverse a file hierarchy
- [fts\_close](https://manual.cs50.io/3/fts_close) - traverse a file hierarchy
- [fts\_open](https://manual.cs50.io/3/fts_open) - traverse a file hierarchy
- [fts\_read](https://manual.cs50.io/3/fts_read) - traverse a file hierarchy
- [fts\_set](https://manual.cs50.io/3/fts_set) - traverse a file hierarchy
- [gai\_strerror](https://manual.cs50.io/3/gai_strerror) - network address and service translation
- [getaddrinfo](https://manual.cs50.io/3/getaddrinfo) - network address and service translation
- [getgrent](https://manual.cs50.io/3/getgrent) - get group file entry
- [getgrgid](https://manual.cs50.io/3/getgrgid) - get group file entry
- [getgrgid\_r](https://manual.cs50.io/3/getgrgid_r) - get group file entry
- [getgrnam](https://manual.cs50.io/3/getgrnam) - get group file entry
- [getgrnam\_r](https://manual.cs50.io/3/getgrnam_r) - get group file entry
- [getifaddrs](https://manual.cs50.io/3/getifaddrs) - get interface addresses
- [getipnodebyaddr](https://manual.cs50.io/3/getipnodebyaddr) - get network hostnames and addresses
- [getipnodebyname](https://manual.cs50.io/3/getipnodebyname) - get network hostnames and addresses
- [getpw](https://manual.cs50.io/3/getpw) - reconstruct password line entry
- [getpwent](https://manual.cs50.io/3/getpwent) - get password file entry
- [getpwnam](https://manual.cs50.io/3/getpwnam) - get password file entry
- [getpwnam\_r](https://manual.cs50.io/3/getpwnam_r) - get password file entry
- [getpwuid](https://manual.cs50.io/3/getpwuid) - get password file entry
- [getpwuid\_r](https://manual.cs50.io/3/getpwuid_r) - get password file entry
- [initgroups](https://manual.cs50.io/3/initgroups) - initialize the supplementary group access list
- [lseek64](https://manual.cs50.io/3/lseek64) - reposition 64-bit read/write file offset
- [mkfifo](https://manual.cs50.io/3/mkfifo) - make a FIFO special file (a named pipe)
- [mkfifoat](https://manual.cs50.io/3/mkfifoat) - make a FIFO special file (a named pipe)
- [opendir](https://manual.cs50.io/3/opendir) - open a directory
- [re\_comp](https://manual.cs50.io/3/re_comp) - BSD regex functions
- [re\_exec](https://manual.cs50.io/3/re_exec) - BSD regex functions
- [rewinddir](https://manual.cs50.io/3/rewinddir) - reset directory stream
- [setgrent](https://manual.cs50.io/3/setgrent) - get group file entry
- [setpwent](https://manual.cs50.io/3/setpwent) - get password file entry
- [ustat](https://manual.cs50.io/2/ustat) - get filesystem statistics
# [sys/uio.h](https://manual.cs50.io/#sys/uio.h)
- [preadv](https://manual.cs50.io/2/preadv) - read or write data into multiple buffers
- [preadv2](https://manual.cs50.io/2/preadv2) - read or write data into multiple buffers
- [process\_vm\_readv](https://manual.cs50.io/2/process_vm_readv) - transfer data between process address spaces
- [process\_vm\_writev](https://manual.cs50.io/2/process_vm_writev) - transfer data between process address spaces
- [pwritev](https://manual.cs50.io/2/pwritev) - read or write data into multiple buffers
- [pwritev2](https://manual.cs50.io/2/pwritev2) - read or write data into multiple buffers
- [readv](https://manual.cs50.io/2/readv) - read or write data into multiple buffers
- [writev](https://manual.cs50.io/2/writev) - read or write data into multiple buffers
# [sys/utsname.h](https://manual.cs50.io/#sys/utsname.h)
- [oldolduname](https://manual.cs50.io/2/oldolduname) - get name and information about current kernel
- [olduname](https://manual.cs50.io/2/olduname) - get name and information about current kernel
- [uname](https://manual.cs50.io/2/uname) - get name and information about current kernel
# [sys/wait.h](https://manual.cs50.io/#sys/wait.h)
- [wait](https://manual.cs50.io/2/wait) - wait for process to change state
- [wait3](https://manual.cs50.io/2/wait3) - wait for process to change state, BSD style
- [wait4](https://manual.cs50.io/2/wait4) - wait for process to change state, BSD style
- [waitid](https://manual.cs50.io/2/waitid) - wait for process to change state
- [waitpid](https://manual.cs50.io/2/waitpid) - wait for process to change state
# [syslog.h](https://manual.cs50.io/#syslog.h)
- [closelog](https://manual.cs50.io/3/closelog) - send messages to the system logger
- [openlog](https://manual.cs50.io/3/openlog) - send messages to the system logger
- [setlogmask](https://manual.cs50.io/3/setlogmask) - set log priority mask
- [syslog](https://manual.cs50.io/3/syslog) - send messages to the system logger
- [vsyslog](https://manual.cs50.io/3/vsyslog) - send messages to the system logger
# [termios.h](https://manual.cs50.io/#termios.h)
- [cfgetispeed](https://manual.cs50.io/3/cfgetispeed) - get and set terminal attributes, line control, get and...
- [cfgetospeed](https://manual.cs50.io/3/cfgetospeed) - get and set terminal attributes, line control, get and...
- [cfmakeraw](https://manual.cs50.io/3/cfmakeraw) - get and set terminal attributes, line control, get and...
- [cfsetispeed](https://manual.cs50.io/3/cfsetispeed) - get and set terminal attributes, line control, get and...
- [cfsetospeed](https://manual.cs50.io/3/cfsetospeed) - get and set terminal attributes, line control, get and...
- [cfsetspeed](https://manual.cs50.io/3/cfsetspeed) - get and set terminal attributes, line control, get and...
- [tcdrain](https://manual.cs50.io/3/tcdrain) - get and set terminal attributes, line control, get and...
- [tcflow](https://manual.cs50.io/3/tcflow) - get and set terminal attributes, line control, get and...
- [tcflush](https://manual.cs50.io/3/tcflush) - get and set terminal attributes, line control, get and...
- [tcgetattr](https://manual.cs50.io/3/tcgetattr) - get and set terminal attributes, line control, get and...
- [tcgetsid](https://manual.cs50.io/3/tcgetsid) - get session ID
- [tcsendbreak](https://manual.cs50.io/3/tcsendbreak) - get and set terminal attributes, line control, get and...
- [tcsetattr](https://manual.cs50.io/3/tcsetattr) - get and set terminal attributes, line control, get and...
- [termios](https://manual.cs50.io/3/termios) - get and set terminal attributes, line control, get and...
# [time.h](https://manual.cs50.io/#time.h)
- [asctime](https://manual.cs50.io/3/asctime) - transform date and time to broken-down time or ASCII
- [asctime\_r](https://manual.cs50.io/3/asctime_r) - transform date and time to broken-down time or ASCII
- [clock](https://manual.cs50.io/3/clock) - determine processor time
- [clock\_getcpuclockid](https://manual.cs50.io/3/clock_getcpuclockid) - obtain ID of a process CPU-time clock
- [clock\_getres](https://manual.cs50.io/2/clock_getres) - clock and time functions
- [clock\_gettime](https://manual.cs50.io/2/clock_gettime) - clock and time functions
- [clock\_nanosleep](https://manual.cs50.io/2/clock_nanosleep) - high-resolution sleep with specifiable clock
- [clock\_settime](https://manual.cs50.io/2/clock_settime) - clock and time functions
- [ctime](https://manual.cs50.io/3/ctime) - transform date and time to broken-down time or ASCII
- [ctime\_r](https://manual.cs50.io/3/ctime_r) - transform date and time to broken-down time or ASCII
- [daylight](https://manual.cs50.io/3/daylight) - initialize time conversion information
- [difftime](https://manual.cs50.io/3/difftime) - calculate time difference
- [dysize](https://manual.cs50.io/3/dysize) - get number of days for a given year
- [getdate](https://manual.cs50.io/3/getdate) - convert a date-plus-time string to broken-down time
- [getdate\_err](https://manual.cs50.io/3/getdate_err) - convert a date-plus-time string to broken-down time
- [getdate\_r](https://manual.cs50.io/3/getdate_r) - convert a date-plus-time string to broken-down time
- [gmtime](https://manual.cs50.io/3/gmtime) - transform date and time to broken-down time or ASCII
- [gmtime\_r](https://manual.cs50.io/3/gmtime_r) - transform date and time to broken-down time or ASCII
- [localtime](https://manual.cs50.io/3/localtime) - transform date and time to broken-down time or ASCII
- [localtime\_r](https://manual.cs50.io/3/localtime_r) - transform date and time to broken-down time or ASCII
- [mktime](https://manual.cs50.io/3/mktime) - transform date and time to broken-down time or ASCII
- [nanosleep](https://manual.cs50.io/2/nanosleep) - high-resolution sleep
- [stime](https://manual.cs50.io/2/stime) - set time
- [strftime](https://manual.cs50.io/3/strftime) - format date and time
- [strftime\_l](https://manual.cs50.io/3/strftime_l) - format date and time
- [strptime](https://manual.cs50.io/3/strptime) - convert a string representation of time to a time tm s...
- [time](https://manual.cs50.io/2/time) - get time in seconds get time in seconds
- [timegm](https://manual.cs50.io/3/timegm) - inverses of gmtime and localtime
- [timelocal](https://manual.cs50.io/3/timelocal) - inverses of gmtime and localtime
- [timer\_create](https://manual.cs50.io/2/timer_create) - create a POSIX per-process timer
- [timer\_delete](https://manual.cs50.io/2/timer_delete) - delete a POSIX per-process timer
- [timer\_getoverrun](https://manual.cs50.io/2/timer_getoverrun) - get overrun count for a POSIX per-process timer
- [timer\_gettime](https://manual.cs50.io/2/timer_gettime) - arm/disarm and fetch state of POSIX per-process timer
- [timer\_settime](https://manual.cs50.io/2/timer_settime) - arm/disarm and fetch state of POSIX per-process timer
- [timezone](https://manual.cs50.io/3/timezone) - initialize time conversion information
- [tzname](https://manual.cs50.io/3/tzname) - initialize time conversion information
- [tzset](https://manual.cs50.io/3/tzset) - initialize time conversion information
# [ulimit.h](https://manual.cs50.io/#ulimit.h)
- [ulimit](https://manual.cs50.io/3/ulimit) - get and set user limits
# [unistd.h](https://manual.cs50.io/#unistd.h)
- [\_Exit](https://manual.cs50.io/2/_Exit) - terminate the calling process
- [\_exit](https://manual.cs50.io/2/_exit) - terminate the calling process
- [\_llseek](https://manual.cs50.io/2/_llseek) - reposition read/write file offset
- [\_sysctl](https://manual.cs50.io/2/_sysctl) - read/write system parameters
- [access](https://manual.cs50.io/2/access) - check user's permissions for a file
- [acct](https://manual.cs50.io/2/acct) - switch process accounting on or off
- [alarm](https://manual.cs50.io/2/alarm) - set an alarm clock for delivery of a signal
- [arch\_prctl](https://manual.cs50.io/2/arch_prctl) - set architecture-specific thread state
- [brk](https://manual.cs50.io/2/brk) - change data segment size
- [capget](https://manual.cs50.io/2/capget) - set/get capabilities of thread(s)
- [capset](https://manual.cs50.io/2/capset) - set/get capabilities of thread(s)
- [chdir](https://manual.cs50.io/2/chdir) - change working directory
- [chown](https://manual.cs50.io/2/chown) - change ownership of a file
- [chown32](https://manual.cs50.io/2/chown32) - change ownership of a file
- [chroot](https://manual.cs50.io/2/chroot) - change root directory
- [close](https://manual.cs50.io/2/close) - close a file descriptor
- [close\_range](https://manual.cs50.io/2/close_range) - close all file descriptors in a given range
- [confstr](https://manual.cs50.io/3/confstr) - get configuration dependent string variables
- [copy\_file\_range](https://manual.cs50.io/2/copy_file_range) - Copy a range of data from one file to another
- [cuserid](https://manual.cs50.io/3/cuserid) - get username
- [daemon](https://manual.cs50.io/3/daemon) - run in the background
- [delete\_module](https://manual.cs50.io/2/delete_module) - unload a kernel module
- [dup](https://manual.cs50.io/2/dup) - duplicate a file descriptor
- [dup2](https://manual.cs50.io/2/dup2) - duplicate a file descriptor
- [dup3](https://manual.cs50.io/2/dup3) - duplicate a file descriptor
- [eaccess](https://manual.cs50.io/3/eaccess) - check effective user's permissions for a file
- [encrypt](https://manual.cs50.io/3/encrypt) - encrypt 64-bit messages
- [encrypt\_r](https://manual.cs50.io/3/encrypt_r) - encrypt 64-bit messages
- [endusershell](https://manual.cs50.io/3/endusershell) - get permitted user shells
- [euidaccess](https://manual.cs50.io/3/euidaccess) - check effective user's permissions for a file
- [exec](https://manual.cs50.io/3/exec) - execute a file
- [execl](https://manual.cs50.io/3/execl) - execute a file
- [execle](https://manual.cs50.io/3/execle) - execute a file
- [execlp](https://manual.cs50.io/3/execlp) - execute a file
- [execv](https://manual.cs50.io/3/execv) - execute a file
- [execve](https://manual.cs50.io/2/execve) - execute program
- [execveat](https://manual.cs50.io/2/execveat) - execute program relative to a directory file descriptor
- [execvp](https://manual.cs50.io/3/execvp) - execute a file
- [execvpe](https://manual.cs50.io/3/execvpe) - execute a file
- [exit](https://manual.cs50.io/2/exit) - terminate the calling process
- [exit\_group](https://manual.cs50.io/2/exit_group) - exit all threads in a process
- [faccessat](https://manual.cs50.io/2/faccessat) - check user's permissions for a file
- [faccessat2](https://manual.cs50.io/2/faccessat2) - check user's permissions for a file
- [fchdir](https://manual.cs50.io/2/fchdir) - change working directory
- [fchown](https://manual.cs50.io/2/fchown) - change ownership of a file
- [fchown32](https://manual.cs50.io/2/fchown32) - change ownership of a file
- [fchownat](https://manual.cs50.io/2/fchownat) - change ownership of a file
- [fdatasync](https://manual.cs50.io/2/fdatasync) - synchronize a file's in-core state with storage device
- [fexecve](https://manual.cs50.io/3/fexecve) - execute program specified via file descriptor
- [finit\_module](https://manual.cs50.io/2/finit_module) - load a kernel module
- [fork](https://manual.cs50.io/2/fork) - create a child process
- [fpathconf](https://manual.cs50.io/3/fpathconf) - get configuration values for files
- [fsync](https://manual.cs50.io/2/fsync) - synchronize a file's in-core state with storage device
- [ftruncate](https://manual.cs50.io/2/ftruncate) - truncate a file to a specified length
- [ftruncate64](https://manual.cs50.io/2/ftruncate64) - truncate a file to a specified length
- [futex](https://manual.cs50.io/2/futex) - fast user-space locking
- [get\_current\_dir\_name](https://manual.cs50.io/3/get_current_dir_name) - get current working directory
- [get\_robust\_list](https://manual.cs50.io/2/get_robust_list) - get/set list of robust futexes
- [get\_thread\_area](https://manual.cs50.io/2/get_thread_area) - manipulate thread-local storage information
- [getcwd](https://manual.cs50.io/2/getcwd) - get current working directory
- [getcwd](https://manual.cs50.io/3/getcwd) - get current working directory
- [getdents](https://manual.cs50.io/2/getdents) - get directory entries
- [getdents64](https://manual.cs50.io/2/getdents64) - get directory entries
- [getdomainname](https://manual.cs50.io/2/getdomainname) - get/set NIS domain name
- [getdtablesize](https://manual.cs50.io/3/getdtablesize) - get file descriptor table size
- [getegid](https://manual.cs50.io/2/getegid) - get group identity
- [getegid32](https://manual.cs50.io/2/getegid32) - get group identity
- [getentropy](https://manual.cs50.io/3/getentropy) - fill a buffer with random bytes
- [geteuid](https://manual.cs50.io/2/geteuid) - get user identity
- [geteuid32](https://manual.cs50.io/2/geteuid32) - get user identity
- [getgid](https://manual.cs50.io/2/getgid) - get group identity
- [getgid32](https://manual.cs50.io/2/getgid32) - get group identity
- [getgroups](https://manual.cs50.io/2/getgroups) - get/set list of supplementary group IDs
- [getgroups32](https://manual.cs50.io/2/getgroups32) - get/set list of supplementary group IDs
- [gethostid](https://manual.cs50.io/3/gethostid) - get or set the unique identifier of the current host
- [gethostname](https://manual.cs50.io/2/gethostname) - get/set hostname
- [getlogin](https://manual.cs50.io/3/getlogin) - get username
- [getlogin\_r](https://manual.cs50.io/3/getlogin_r) - get username
- [getopt](https://manual.cs50.io/3/getopt) - Parse command-line options
- [getopt\_long](https://manual.cs50.io/3/getopt_long) - Parse command-line options
- [getopt\_long\_only](https://manual.cs50.io/3/getopt_long_only) - Parse command-line options
- [getpagesize](https://manual.cs50.io/2/getpagesize) - get memory page size
- [getpass](https://manual.cs50.io/3/getpass) - get a password
- [getpgid](https://manual.cs50.io/2/getpgid) - set/get process group
- [getpgrp](https://manual.cs50.io/2/getpgrp) - set/get process group
- [getpid](https://manual.cs50.io/2/getpid) - get process identification
- [getppid](https://manual.cs50.io/2/getppid) - get process identification
- [getresgid](https://manual.cs50.io/2/getresgid) - get real, effective, and saved user/group IDs
- [getresgid32](https://manual.cs50.io/2/getresgid32) - get real, effective, and saved user/group IDs
- [getresuid](https://manual.cs50.io/2/getresuid) - get real, effective, and saved user/group IDs
- [getresuid32](https://manual.cs50.io/2/getresuid32) - get real, effective, and saved user/group IDs
- [getsid](https://manual.cs50.io/2/getsid) - get session ID
- [gettid](https://manual.cs50.io/2/gettid) - get thread identification
- [getuid](https://manual.cs50.io/2/getuid) - get user identity
- [getuid32](https://manual.cs50.io/2/getuid32) - get user identity
- [getusershell](https://manual.cs50.io/3/getusershell) - get permitted user shells
- [getwd](https://manual.cs50.io/3/getwd) - get current working directory
- [group\_member](https://manual.cs50.io/3/group_member) - test whether a process is in a group
- [idle](https://manual.cs50.io/2/idle) - make process 0 idle
- [init\_module](https://manual.cs50.io/2/init_module) - load a kernel module
- [io\_cancel](https://manual.cs50.io/2/io_cancel) - cancel an outstanding asynchronous I/O operation
- [io\_destroy](https://manual.cs50.io/2/io_destroy) - destroy an asynchronous I/O context
- [io\_getevents](https://manual.cs50.io/2/io_getevents) - read asynchronous I/O events from the completion queue
- [ioprio\_get](https://manual.cs50.io/2/ioprio_get) - get/set I/O scheduling class and priority
- [ioprio\_set](https://manual.cs50.io/2/ioprio_set) - get/set I/O scheduling class and priority
- [ipc](https://manual.cs50.io/2/ipc) - System V IPC system calls
- [isatty](https://manual.cs50.io/3/isatty) - test whether a file descriptor refers to a terminal
- [kcmp](https://manual.cs50.io/2/kcmp) - compare two processes to determine if they share a ker...
- [kexec\_file\_load](https://manual.cs50.io/2/kexec_file_load) - load a new kernel for later execution
- [kexec\_load](https://manual.cs50.io/2/kexec_load) - load a new kernel for later execution
- [keyctl](https://manual.cs50.io/2/keyctl) - manipulate the kernel's key management facility
- [klogctl](https://manual.cs50.io/3/klogctl) - read and/or clear kernel message ring buffer; set cons...
- [lchown](https://manual.cs50.io/2/lchown) - change ownership of a file
- [lchown32](https://manual.cs50.io/2/lchown32) - change ownership of a file
- [link](https://manual.cs50.io/2/link) - make a new name for a file
- [linkat](https://manual.cs50.io/2/linkat) - make a new name for a file
- [llseek](https://manual.cs50.io/2/llseek) - reposition read/write file offset
- [lockf](https://manual.cs50.io/3/lockf) - apply, test or remove a POSIX lock on an open file
- [lookup\_dcookie](https://manual.cs50.io/2/lookup_dcookie) - return a directory entry's path
- [lseek](https://manual.cs50.io/2/lseek) - reposition read/write file offset
- [membarrier](https://manual.cs50.io/2/membarrier) - issue memory barriers on a set of threads
- [memfd\_secret](https://manual.cs50.io/2/memfd_secret) - create an anonymous RAM-based file to access secret me...
- [mmap2](https://manual.cs50.io/2/mmap2) - map files or devices into memory
- [modify\_ldt](https://manual.cs50.io/2/modify_ldt) - get or set a per-process LDT entry
- [mount\_setattr](https://manual.cs50.io/2/mount_setattr) - change properties of a mount or mount tree
- [mq\_getsetattr](https://manual.cs50.io/2/mq_getsetattr) - get/set message queue attributes
- [nice](https://manual.cs50.io/2/nice) - change process priority
- [openat2](https://manual.cs50.io/2/openat2) - open and possibly create a file (extended)
- [optarg](https://manual.cs50.io/3/optarg) - Parse command-line options
- [opterr](https://manual.cs50.io/3/opterr) - Parse command-line options
- [optind](https://manual.cs50.io/3/optind) - Parse command-line options
- [optopt](https://manual.cs50.io/3/optopt) - Parse command-line options
- [pathconf](https://manual.cs50.io/3/pathconf) - get configuration values for files
- [pause](https://manual.cs50.io/2/pause) - wait for signal
- [perf\_event\_open](https://manual.cs50.io/2/perf_event_open) - set up performance monitoring
- [pidfd\_getfd](https://manual.cs50.io/2/pidfd_getfd) - obtain a duplicate of another process's file descriptor
- [pidfd\_open](https://manual.cs50.io/2/pidfd_open) - obtain a file descriptor that refers to a process
- [pidfd\_send\_signal](https://manual.cs50.io/2/pidfd_send_signal) - send a signal to a process specified by a file descri...
- [pipe](https://manual.cs50.io/2/pipe) - create pipe
- [pipe2](https://manual.cs50.io/2/pipe2) - create pipe
- [pivot\_root](https://manual.cs50.io/2/pivot_root) - change the root mount
- [pread](https://manual.cs50.io/2/pread) - read from or write to a file descriptor at a given offset
- [pread64](https://manual.cs50.io/2/pread64) - read from or write to a file descriptor at a given offset
- [profil](https://manual.cs50.io/3/profil) - execution time profile
- [pwrite](https://manual.cs50.io/2/pwrite) - read from or write to a file descriptor at a given offset
- [pwrite64](https://manual.cs50.io/2/pwrite64) - read from or write to a file descriptor at a given offset
- [read](https://manual.cs50.io/2/read) - read from a file descriptor
- [readdir](https://manual.cs50.io/2/readdir) - read directory entry
- [readlink](https://manual.cs50.io/2/readlink) - read value of a symbolic link
- [readlinkat](https://manual.cs50.io/2/readlinkat) - read value of a symbolic link
- [reboot](https://manual.cs50.io/2/reboot) - reboot or enable/disable Ctrl-Alt-Del
- [rmdir](https://manual.cs50.io/2/rmdir) - delete a directory
- [rt\_sigqueueinfo](https://manual.cs50.io/2/rt_sigqueueinfo) - queue a signal and data
- [rt\_tgsigqueueinfo](https://manual.cs50.io/2/rt_tgsigqueueinfo) - queue a signal and data
- [s390\_guarded\_storage](https://manual.cs50.io/2/s390_guarded_storage) - operations with z/Architecture guarded storage fac...
- [s390\_pci\_mmio\_read](https://manual.cs50.io/2/s390_pci_mmio_read) - transfer data to/from PCI MMIO memory page
- [s390\_pci\_mmio\_write](https://manual.cs50.io/2/s390_pci_mmio_write) - transfer data to/from PCI MMIO memory page
- [s390\_runtime\_instr](https://manual.cs50.io/2/s390_runtime_instr) - enable/disable s390 CPU run-time instrumentation
- [s390\_sthyi](https://manual.cs50.io/2/s390_sthyi) - emulate STHYI instruction
- [sbrk](https://manual.cs50.io/2/sbrk) - change data segment size
- [sched\_getattr](https://manual.cs50.io/2/sched_getattr) - set and get scheduling policy and attributes
- [sched\_setattr](https://manual.cs50.io/2/sched_setattr) - set and get scheduling policy and attributes
- [seccomp](https://manual.cs50.io/2/seccomp) - operate on Secure Computing state of the process
- [set\_robust\_list](https://manual.cs50.io/2/set_robust_list) - get/set list of robust futexes
- [set\_thread\_area](https://manual.cs50.io/2/set_thread_area) - manipulate thread-local storage information
- [set\_tid\_address](https://manual.cs50.io/2/set_tid_address) - set pointer to thread ID
- [setdomainname](https://manual.cs50.io/2/setdomainname) - get/set NIS domain name
- [setegid](https://manual.cs50.io/2/setegid) - set effective user or group ID
- [seteuid](https://manual.cs50.io/2/seteuid) - set effective user or group ID
- [setgid](https://manual.cs50.io/2/setgid) - set group identity
- [setgid32](https://manual.cs50.io/2/setgid32) - set group identity
- [setgroups](https://manual.cs50.io/2/setgroups) - get/set list of supplementary group IDs
- [setgroups32](https://manual.cs50.io/2/setgroups32) - get/set list of supplementary group IDs
- [sethostid](https://manual.cs50.io/3/sethostid) - get or set the unique identifier of the current host
- [sethostname](https://manual.cs50.io/2/sethostname) - get/set hostname
- [setkey](https://manual.cs50.io/3/setkey) - encrypt 64-bit messages
- [setkey\_r](https://manual.cs50.io/3/setkey_r) - encrypt 64-bit messages
- [setpgid](https://manual.cs50.io/2/setpgid) - set/get process group
- [setpgrp](https://manual.cs50.io/2/setpgrp) - set/get process group
- [setregid](https://manual.cs50.io/2/setregid) - set real and/or effective user or group ID
- [setregid32](https://manual.cs50.io/2/setregid32) - set real and/or effective user or group ID
- [setresgid](https://manual.cs50.io/2/setresgid) - set real, effective, and saved user or group ID
- [setresgid32](https://manual.cs50.io/2/setresgid32) - set real, effective, and saved user or group ID
- [setresuid](https://manual.cs50.io/2/setresuid) - set real, effective, and saved user or group ID
- [setresuid32](https://manual.cs50.io/2/setresuid32) - set real, effective, and saved user or group ID
- [setreuid](https://manual.cs50.io/2/setreuid) - set real and/or effective user or group ID
- [setreuid32](https://manual.cs50.io/2/setreuid32) - set real and/or effective user or group ID
- [setsid](https://manual.cs50.io/2/setsid) - creates a session and sets the process group ID
- [setuid](https://manual.cs50.io/2/setuid) - set user identity
- [setuid32](https://manual.cs50.io/2/setuid32) - set user identity
- [setup](https://manual.cs50.io/2/setup) - setup devices and filesystems, mount root filesystem
- [setusershell](https://manual.cs50.io/3/setusershell) - get permitted user shells
- [sgetmask](https://manual.cs50.io/2/sgetmask) - manipulation of signal mask (obsolete)
- [sleep](https://manual.cs50.io/3/sleep) - sleep for a specified number of seconds
- [socketcall](https://manual.cs50.io/2/socketcall) - socket system calls
- [spu\_create](https://manual.cs50.io/2/spu_create) - create a new spu context
- [spu\_run](https://manual.cs50.io/2/spu_run) - execute an SPU context
- [ssetmask](https://manual.cs50.io/2/ssetmask) - manipulation of signal mask (obsolete)
- [subpage\_prot](https://manual.cs50.io/2/subpage_prot) - define a subpage protection for an address range
- [swab](https://manual.cs50.io/3/swab) - swap adjacent bytes
- [symlink](https://manual.cs50.io/2/symlink) - make a new name for a file
- [symlinkat](https://manual.cs50.io/2/symlinkat) - make a new name for a file
- [sync](https://manual.cs50.io/2/sync) - commit filesystem caches to disk
- [syncfs](https://manual.cs50.io/2/syncfs) - commit filesystem caches to disk
- [syscall](https://manual.cs50.io/2/syscall) - indirect system call
- [sysconf](https://manual.cs50.io/3/sysconf) - get configuration information at run time
- [sysctl](https://manual.cs50.io/2/sysctl) - read/write system parameters
- [syslog](https://manual.cs50.io/2/syslog) - read and/or clear kernel message ring buffer; set cons...
- [tcgetpgrp](https://manual.cs50.io/3/tcgetpgrp) - get and set terminal foreground process group
- [tcsetpgrp](https://manual.cs50.io/3/tcsetpgrp) - get and set terminal foreground process group
- [tgkill](https://manual.cs50.io/2/tgkill) - send a signal to a thread
- [tkill](https://manual.cs50.io/2/tkill) - send a signal to a thread
- [truncate](https://manual.cs50.io/2/truncate) - truncate a file to a specified length
- [truncate64](https://manual.cs50.io/2/truncate64) - truncate a file to a specified length
- [ttyname](https://manual.cs50.io/3/ttyname) - return name of a terminal
- [ttyname\_r](https://manual.cs50.io/3/ttyname_r) - return name of a terminal
- [ualarm](https://manual.cs50.io/3/ualarm) - schedule signal after given number of microseconds
- [unlink](https://manual.cs50.io/2/unlink) - delete a name and possibly the file it refers to
- [unlinkat](https://manual.cs50.io/2/unlinkat) - delete a name and possibly the file it refers to
- [uselib](https://manual.cs50.io/2/uselib) - load shared library
- [userfaultfd](https://manual.cs50.io/2/userfaultfd) - create a file descriptor for handling page faults in u...
- [usleep](https://manual.cs50.io/3/usleep) - suspend execution for microsecond intervals
- [vfork](https://manual.cs50.io/2/vfork) - create a child process and block parent
- [vhangup](https://manual.cs50.io/2/vhangup) - virtually hangup the current terminal
- [write](https://manual.cs50.io/2/write) - write to a file descriptor
# [utime.h](https://manual.cs50.io/#utime.h)
- [utime](https://manual.cs50.io/2/utime) - change file last access and modification times
- [utimes](https://manual.cs50.io/2/utimes) - change file last access and modification times
# [utmpx.h](https://manual.cs50.io/#utmpx.h)
- [getutmp](https://manual.cs50.io/3/getutmp) - copy utmp structure to utmpx, and vice versa
- [getutmpx](https://manual.cs50.io/3/getutmpx) - copy utmp structure to utmpx, and vice versa
# [wchar.h](https://manual.cs50.io/#wchar.h)
- [btowc](https://manual.cs50.io/3/btowc) - convert single byte to wide character
- [fgetws](https://manual.cs50.io/3/fgetws) - read a wide-character string from a FILE stream
- [fputws](https://manual.cs50.io/3/fputws) - write a wide-character string to a FILE stream
- [fwide](https://manual.cs50.io/3/fwide) - set and determine the orientation of a FILE stream
- [getwchar](https://manual.cs50.io/3/getwchar) - read a wide character from standard input
- [mbrlen](https://manual.cs50.io/3/mbrlen) - determine number of bytes in next multibyte character
- [mbrtowc](https://manual.cs50.io/3/mbrtowc) - convert a multibyte sequence to a wide character
- [mbsinit](https://manual.cs50.io/3/mbsinit) - test for initial shift state
- [mbsnrtowcs](https://manual.cs50.io/3/mbsnrtowcs) - convert a multibyte string to a wide-character string
- [mbsrtowcs](https://manual.cs50.io/3/mbsrtowcs) - convert a multibyte string to a wide-character string ...
- [putwchar](https://manual.cs50.io/3/putwchar) - write a wide character to standard output
- [ungetwc](https://manual.cs50.io/3/ungetwc) - push back a wide character onto a FILE stream
- [wcpcpy](https://manual.cs50.io/3/wcpcpy) - copy a wide-character string, returning a pointer to i...
- [wcpncpy](https://manual.cs50.io/3/wcpncpy) - copy a fixed-size string of wide characters, returning...
- [wcrtomb](https://manual.cs50.io/3/wcrtomb) - convert a wide character to a multibyte sequence
- [wcscasecmp](https://manual.cs50.io/3/wcscasecmp) - compare two wide-character strings, ignoring case
- [wcscat](https://manual.cs50.io/3/wcscat) - concatenate two wide-character strings
- [wcschr](https://manual.cs50.io/3/wcschr) - search a wide character in a wide-character string
- [wcscmp](https://manual.cs50.io/3/wcscmp) - compare two wide-character strings
- [wcscpy](https://manual.cs50.io/3/wcscpy) - copy a wide-character string
- [wcscspn](https://manual.cs50.io/3/wcscspn) - search a wide-character string for any of a set of wid...
- [wcsdup](https://manual.cs50.io/3/wcsdup) - duplicate a wide-character string
- [wcslen](https://manual.cs50.io/3/wcslen) - determine the length of a wide-character string
- [wcsncasecmp](https://manual.cs50.io/3/wcsncasecmp) - compare two fixed-size wide-character strings, ignorin...
- [wcsncat](https://manual.cs50.io/3/wcsncat) - concatenate two wide-character strings
- [wcsncmp](https://manual.cs50.io/3/wcsncmp) - compare two fixed-size wide-character strings
- [wcsncpy](https://manual.cs50.io/3/wcsncpy) - copy a fixed-size string of wide characters
- [wcsnlen](https://manual.cs50.io/3/wcsnlen) - determine the length of a fixed-size wide-character st...
- [wcsnrtombs](https://manual.cs50.io/3/wcsnrtombs) - convert a wide-character string to a multibyte string
- [wcspbrk](https://manual.cs50.io/3/wcspbrk) - search a wide-character string for any of a set of wid...
- [wcsrchr](https://manual.cs50.io/3/wcsrchr) - search a wide character in a wide-character string
- [wcsrtombs](https://manual.cs50.io/3/wcsrtombs) - convert a wide-character string to a multibyte string
- [wcsspn](https://manual.cs50.io/3/wcsspn) - get length of a prefix wide-character substring
- [wcsstr](https://manual.cs50.io/3/wcsstr) - locate a substring in a wide-character string
- [wcstok](https://manual.cs50.io/3/wcstok) - split wide-character string into tokens
- [wcswidth](https://manual.cs50.io/3/wcswidth) - determine columns needed for a fixed-size wide-charact...
- [wctob](https://manual.cs50.io/3/wctob) - try to represent a wide character as a single byte
- [wcwidth](https://manual.cs50.io/3/wcwidth) - determine columns needed for a wide character
- [wmemchr](https://manual.cs50.io/3/wmemchr) - search a wide character in a wide-character array
- [wmemcmp](https://manual.cs50.io/3/wmemcmp) - compare two arrays of wide-characters
- [wmemcpy](https://manual.cs50.io/3/wmemcpy) - copy an array of wide-characters
- [wmemmove](https://manual.cs50.io/3/wmemmove) - copy an array of wide-characters
- [wmemset](https://manual.cs50.io/3/wmemset) - fill an array of wide-characters with a constant wide ...
# [wctype.h](https://manual.cs50.io/#wctype.h)
- [iswalnum](https://manual.cs50.io/3/iswalnum) - test for alphanumeric wide character
- [iswalpha](https://manual.cs50.io/3/iswalpha) - test for alphabetic wide character
- [iswblank](https://manual.cs50.io/3/iswblank) - test for whitespace wide character
- [iswcntrl](https://manual.cs50.io/3/iswcntrl) - test for control wide character
- [iswctype](https://manual.cs50.io/3/iswctype) - wide-character classification
- [iswdigit](https://manual.cs50.io/3/iswdigit) - test for decimal digit wide character
- [iswgraph](https://manual.cs50.io/3/iswgraph) - test for graphic wide character
- [iswlower](https://manual.cs50.io/3/iswlower) - test for lowercase wide character
- [iswprint](https://manual.cs50.io/3/iswprint) - test for printing wide character
- [iswpunct](https://manual.cs50.io/3/iswpunct) - test for punctuation or symbolic wide character
- [iswspace](https://manual.cs50.io/3/iswspace) - test for whitespace wide character
- [iswupper](https://manual.cs50.io/3/iswupper) - test for uppercase wide character
- [iswxdigit](https://manual.cs50.io/3/iswxdigit) - test for hexadecimal digit wide character
- [towctrans](https://manual.cs50.io/3/towctrans) - wide-character transliteration
- [towlower](https://manual.cs50.io/3/towlower) - convert a wide character to lowercase
- [towlower\_l](https://manual.cs50.io/3/towlower_l) - convert a wide character to lowercase
- [towupper](https://manual.cs50.io/3/towupper) - convert a wide character to uppercase
- [towupper\_l](https://manual.cs50.io/3/towupper_l) - convert a wide character to uppercase
- [wctrans](https://manual.cs50.io/3/wctrans) - wide-character translation mapping
- [wctype](https://manual.cs50.io/3/wctype) - wide-character classification
# [wordexp.h](https://manual.cs50.io/#wordexp.h)
- [wordexp](https://manual.cs50.io/3/wordexp) - perform word expansion like a posix-shell
- [wordfree](https://manual.cs50.io/3/wordfree) - perform word expansion like a posix-shell |
| Readable Markdown | Manual pages for the C standard library, the C POSIX library, and the CS50 Library for [those less comfortable]().
## [aio.h](https://manual.cs50.io/#aio.h)
- [aio\_cancel](https://manual.cs50.io/3/aio_cancel) - cancel an outstanding asynchronous I/O request
- [aio\_error](https://manual.cs50.io/3/aio_error) - get error status of asynchronous I/O operation
- [aio\_fsync](https://manual.cs50.io/3/aio_fsync) - asynchronous file synchronization
- [aio\_init](https://manual.cs50.io/3/aio_init) - asynchronous I/O initialization
- [aio\_read](https://manual.cs50.io/3/aio_read) - asynchronous read
- [aio\_return](https://manual.cs50.io/3/aio_return) - get return status of asynchronous I/O operation
- [aio\_suspend](https://manual.cs50.io/3/aio_suspend) - wait for asynchronous I/O operation or timeout
- [aio\_write](https://manual.cs50.io/3/aio_write) - asynchronous write
- [lio\_listio](https://manual.cs50.io/3/lio_listio) - initiate a list of I/O requests
## [arpa/inet.h](https://manual.cs50.io/#arpa/inet.h)
- [byteorder](https://manual.cs50.io/3/byteorder) - convert values between host and network byte order
- [htonl](https://manual.cs50.io/3/htonl) - convert values between host and network byte order
- [htons](https://manual.cs50.io/3/htons) - convert values between host and network byte order
- [inet\_net\_ntop](https://manual.cs50.io/3/inet_net_ntop) - Internet network number conversion
- [inet\_net\_pton](https://manual.cs50.io/3/inet_net_pton) - Internet network number conversion
- [inet\_ntop](https://manual.cs50.io/3/inet_ntop) - convert IPv4 and IPv6 addresses from binary to text form
- [inet\_pton](https://manual.cs50.io/3/inet_pton) - convert IPv4 and IPv6 addresses from text to binary form
- [ntohl](https://manual.cs50.io/3/ntohl) - convert values between host and network byte order
- [ntohs](https://manual.cs50.io/3/ntohs) - convert values between host and network byte order
## [assert.h](https://manual.cs50.io/#assert.h)
- [\_Static\_assert](https://manual.cs50.io/3/_Static_assert) - fail compilation if assertion is false
- [assert](https://manual.cs50.io/3/assert) - abort the program if assertion is false
- [assert\_perror](https://manual.cs50.io/3/assert_perror) - test errnum and abort
- [static\_assert](https://manual.cs50.io/3/static_assert) - fail compilation if assertion is false
## [complex.h](https://manual.cs50.io/#complex.h)
- [cabs](https://manual.cs50.io/3/cabs) - absolute value of a complex number
- [cabsf](https://manual.cs50.io/3/cabsf) - absolute value of a complex number
- [cabsl](https://manual.cs50.io/3/cabsl) - absolute value of a complex number
- [cacos](https://manual.cs50.io/3/cacos) - complex arc cosine
- [cacosf](https://manual.cs50.io/3/cacosf) - complex arc cosine
- [cacosh](https://manual.cs50.io/3/cacosh) - complex arc hyperbolic cosine
- [cacoshf](https://manual.cs50.io/3/cacoshf) - complex arc hyperbolic cosine
- [cacoshl](https://manual.cs50.io/3/cacoshl) - complex arc hyperbolic cosine
- [cacosl](https://manual.cs50.io/3/cacosl) - complex arc cosine
- [carg](https://manual.cs50.io/3/carg) - calculate the complex argument
- [cargf](https://manual.cs50.io/3/cargf) - calculate the complex argument
- [cargl](https://manual.cs50.io/3/cargl) - calculate the complex argument
- [casin](https://manual.cs50.io/3/casin) - complex arc sine
- [casinf](https://manual.cs50.io/3/casinf) - complex arc sine
- [casinh](https://manual.cs50.io/3/casinh) - complex arc sine hyperbolic
- [casinhf](https://manual.cs50.io/3/casinhf) - complex arc sine hyperbolic
- [casinhl](https://manual.cs50.io/3/casinhl) - complex arc sine hyperbolic
- [casinl](https://manual.cs50.io/3/casinl) - complex arc sine
- [catan](https://manual.cs50.io/3/catan) - complex arc tangents
- [catanf](https://manual.cs50.io/3/catanf) - complex arc tangents
- [catanh](https://manual.cs50.io/3/catanh) - complex arc tangents hyperbolic
- [catanhf](https://manual.cs50.io/3/catanhf) - complex arc tangents hyperbolic
- [catanhl](https://manual.cs50.io/3/catanhl) - complex arc tangents hyperbolic
- [catanl](https://manual.cs50.io/3/catanl) - complex arc tangents
- [ccos](https://manual.cs50.io/3/ccos) - complex cosine function
- [ccosf](https://manual.cs50.io/3/ccosf) - complex cosine function
- [ccosh](https://manual.cs50.io/3/ccosh) - complex hyperbolic cosine
- [ccoshf](https://manual.cs50.io/3/ccoshf) - complex hyperbolic cosine
- [ccoshl](https://manual.cs50.io/3/ccoshl) - complex hyperbolic cosine
- [ccosl](https://manual.cs50.io/3/ccosl) - complex cosine function
- [cexp](https://manual.cs50.io/3/cexp) - complex exponential function
- [cexp2](https://manual.cs50.io/3/cexp2) - base-2 exponent of a complex number
- [cexp2f](https://manual.cs50.io/3/cexp2f) - base-2 exponent of a complex number
- [cexp2l](https://manual.cs50.io/3/cexp2l) - base-2 exponent of a complex number
- [cexpf](https://manual.cs50.io/3/cexpf) - complex exponential function
- [cexpl](https://manual.cs50.io/3/cexpl) - complex exponential function
- [cimag](https://manual.cs50.io/3/cimag) - get imaginary part of a complex number
- [cimagf](https://manual.cs50.io/3/cimagf) - get imaginary part of a complex number
- [cimagl](https://manual.cs50.io/3/cimagl) - get imaginary part of a complex number
- [clog](https://manual.cs50.io/3/clog) - natural logarithm of a complex number
- [clog10](https://manual.cs50.io/3/clog10) - base-10 logarithm of a complex number
- [clog10f](https://manual.cs50.io/3/clog10f) - base-10 logarithm of a complex number
- [clog10l](https://manual.cs50.io/3/clog10l) - base-10 logarithm of a complex number
- [clog2](https://manual.cs50.io/3/clog2) - base-2 logarithm of a complex number
- [clog2f](https://manual.cs50.io/3/clog2f) - base-2 logarithm of a complex number
- [clog2l](https://manual.cs50.io/3/clog2l) - base-2 logarithm of a complex number
- [clogf](https://manual.cs50.io/3/clogf) - natural logarithm of a complex number
- [clogl](https://manual.cs50.io/3/clogl) - natural logarithm of a complex number
- [complex](https://manual.cs50.io/7/complex) - basics of complex mathematics
- [conj](https://manual.cs50.io/3/conj) - calculate the complex conjugate
- [conjf](https://manual.cs50.io/3/conjf) - calculate the complex conjugate
- [conjl](https://manual.cs50.io/3/conjl) - calculate the complex conjugate
- [cpow](https://manual.cs50.io/3/cpow) - complex power function
- [cpowf](https://manual.cs50.io/3/cpowf) - complex power function
- [cpowl](https://manual.cs50.io/3/cpowl) - complex power function
- [cproj](https://manual.cs50.io/3/cproj) - project into Riemann Sphere
- [cprojf](https://manual.cs50.io/3/cprojf) - project into Riemann Sphere
- [cprojl](https://manual.cs50.io/3/cprojl) - project into Riemann Sphere
- [creal](https://manual.cs50.io/3/creal) - get real part of a complex number
- [crealf](https://manual.cs50.io/3/crealf) - get real part of a complex number
- [creall](https://manual.cs50.io/3/creall) - get real part of a complex number
- [csin](https://manual.cs50.io/3/csin) - complex sine function
- [csinf](https://manual.cs50.io/3/csinf) - complex sine function
- [csinh](https://manual.cs50.io/3/csinh) - complex hyperbolic sine
- [csinhf](https://manual.cs50.io/3/csinhf) - complex hyperbolic sine
- [csinhl](https://manual.cs50.io/3/csinhl) - complex hyperbolic sine
- [csinl](https://manual.cs50.io/3/csinl) - complex sine function
- [csqrt](https://manual.cs50.io/3/csqrt) - complex square root
- [csqrtf](https://manual.cs50.io/3/csqrtf) - complex square root
- [csqrtl](https://manual.cs50.io/3/csqrtl) - complex square root
- [ctan](https://manual.cs50.io/3/ctan) - complex tangent function
- [ctanf](https://manual.cs50.io/3/ctanf) - complex tangent function
- [ctanh](https://manual.cs50.io/3/ctanh) - complex hyperbolic tangent
- [ctanhf](https://manual.cs50.io/3/ctanhf) - complex hyperbolic tangent
- [ctanhl](https://manual.cs50.io/3/ctanhl) - complex hyperbolic tangent
- [ctanl](https://manual.cs50.io/3/ctanl) - complex tangent function
- [get\_char](https://manual.cs50.io/3/get_char) - prompts user for a line of text from stdin and returns... prompt a user for a `char`
- [get\_double](https://manual.cs50.io/3/get_double) - prompts user for a line of text from stdin and returns... prompt a user for a `double`
- [get\_float](https://manual.cs50.io/3/get_float) - prompts user for a line of text from stdin and returns... prompt a user for a `float`
- [get\_int](https://manual.cs50.io/3/get_int) - prompts user for a line of text from stdin and returns... prompt a user for an `int`
- [get\_long](https://manual.cs50.io/3/get_long) - prompts user for a line of text from stdin and returns... prompt a user for an `long`
- [get\_long\_long](https://manual.cs50.io/3/get_long_long) - prompts user for a line of text from stdin and returns...
- [get\_string](https://manual.cs50.io/3/get_string) - prompts user for a line of text from stdin and returns... prompt a user for a `string`
## [ctype.h](https://manual.cs50.io/#ctype.h)
- [isalnum](https://manual.cs50.io/3/isalnum) - character classification functions check whether a character is alphanumeric
- [isalnum\_l](https://manual.cs50.io/3/isalnum_l) - character classification functions
- [isalpha](https://manual.cs50.io/3/isalpha) - character classification functions check whether a character is alphabetical
- [isalpha\_l](https://manual.cs50.io/3/isalpha_l) - character classification functions
- [isascii](https://manual.cs50.io/3/isascii) - character classification functions
- [isascii\_l](https://manual.cs50.io/3/isascii_l) - character classification functions
- [isblank](https://manual.cs50.io/3/isblank) - character classification functions check whether a character is blank (i.e., a space or tab)
- [isblank\_l](https://manual.cs50.io/3/isblank_l) - character classification functions
- [iscntrl](https://manual.cs50.io/3/iscntrl) - character classification functions
- [iscntrl\_l](https://manual.cs50.io/3/iscntrl_l) - character classification functions
- [isdigit](https://manual.cs50.io/3/isdigit) - character classification functions check whether a character is a digit
- [isdigit\_l](https://manual.cs50.io/3/isdigit_l) - character classification functions
- [isgraph](https://manual.cs50.io/3/isgraph) - character classification functions
- [isgraph\_l](https://manual.cs50.io/3/isgraph_l) - character classification functions
- [islower](https://manual.cs50.io/3/islower) - character classification functions check whether a character is lowercase
- [islower\_l](https://manual.cs50.io/3/islower_l) - character classification functions
- [isprint](https://manual.cs50.io/3/isprint) - character classification functions
- [isprint\_l](https://manual.cs50.io/3/isprint_l) - character classification functions
- [ispunct](https://manual.cs50.io/3/ispunct) - character classification functions check whether a character is punctuation
- [ispunct\_l](https://manual.cs50.io/3/ispunct_l) - character classification functions
- [isspace](https://manual.cs50.io/3/isspace) - character classification functions check whether a character is whitespace (e.g., a newline, space, or tab)
- [isspace\_l](https://manual.cs50.io/3/isspace_l) - character classification functions
- [isupper](https://manual.cs50.io/3/isupper) - character classification functions check whether a character is uppercase
- [isupper\_l](https://manual.cs50.io/3/isupper_l) - character classification functions
- [isxdigit](https://manual.cs50.io/3/isxdigit) - character classification functions
- [isxdigit\_l](https://manual.cs50.io/3/isxdigit_l) - character classification functions
- [toascii](https://manual.cs50.io/3/toascii) - convert character to ASCII
- [tolower](https://manual.cs50.io/3/tolower) - convert uppercase or lowercase convert a `char` to lowercase
- [tolower\_l](https://manual.cs50.io/3/tolower_l) - convert uppercase or lowercase
- [toupper](https://manual.cs50.io/3/toupper) - convert uppercase or lowercase convert a `char` to uppercase
- [toupper\_l](https://manual.cs50.io/3/toupper_l) - convert uppercase or lowercase
## [dirent.h](https://manual.cs50.io/#dirent.h)
- [alphasort](https://manual.cs50.io/3/alphasort) - scan a directory for matching entries
- [getdirentries](https://manual.cs50.io/3/getdirentries) - get directory entries in a filesystem-independent format
- [readdir](https://manual.cs50.io/3/readdir) - read a directory
- [readdir\_r](https://manual.cs50.io/3/readdir_r) - read a directory
- [scandir](https://manual.cs50.io/3/scandir) - scan a directory for matching entries
- [scandirat](https://manual.cs50.io/3/scandirat) - scan a directory for matching entries
- [seekdir](https://manual.cs50.io/3/seekdir) - set the position of the next readdir() call in the dir...
- [telldir](https://manual.cs50.io/3/telldir) - return current location in directory stream
- [versionsort](https://manual.cs50.io/3/versionsort) - scan a directory for matching entries
## [dlfcn.h](https://manual.cs50.io/#dlfcn.h)
- [dladdr](https://manual.cs50.io/3/dladdr) - translate address to symbolic information
- [dladdr1](https://manual.cs50.io/3/dladdr1) - translate address to symbolic information
- [dlclose](https://manual.cs50.io/3/dlclose) - open and close a shared object
- [dlerror](https://manual.cs50.io/3/dlerror) - obtain error diagnostic for functions in the dlopen API
- [dlmopen](https://manual.cs50.io/3/dlmopen) - open and close a shared object
- [dlopen](https://manual.cs50.io/3/dlopen) - open and close a shared object
- [dlsym](https://manual.cs50.io/3/dlsym) - obtain address of a symbol in a shared object or execu...
- [dlvsym](https://manual.cs50.io/3/dlvsym) - obtain address of a symbol in a shared object or execu...
## [errno.h](https://manual.cs50.io/#errno.h)
- [errno](https://manual.cs50.io/3/errno) - number of last error
- [program\_invocation\_name](https://manual.cs50.io/3/program_invocation_name) - obtain name used to invoke calling program
- [program\_invocation\_short\_name](https://manual.cs50.io/3/program_invocation_short_name) - obtain name used to invoke calling program
## [fcntl.h](https://manual.cs50.io/#fcntl.h)
- [arm\_fadvise](https://manual.cs50.io/2/arm_fadvise) - predeclare an access pattern for file data
- [arm\_fadvise64\_64](https://manual.cs50.io/2/arm_fadvise64_64) - predeclare an access pattern for file data
- [arm\_sync\_file\_range](https://manual.cs50.io/2/arm_sync_file_range) - sync a file segment with disk
- [creat](https://manual.cs50.io/2/creat) - open and possibly create a file
- [fadvise64](https://manual.cs50.io/2/fadvise64) - predeclare an access pattern for file data
- [fadvise64\_64](https://manual.cs50.io/2/fadvise64_64) - predeclare an access pattern for file data
- [fallocate](https://manual.cs50.io/2/fallocate) - manipulate file space
- [fcntl](https://manual.cs50.io/2/fcntl) - manipulate file descriptor
- [fcntl64](https://manual.cs50.io/2/fcntl64) - manipulate file descriptor
- [name\_to\_handle\_at](https://manual.cs50.io/2/name_to_handle_at) - obtain handle for a pathname and open file via a handle
- [open](https://manual.cs50.io/2/open) - open and possibly create a file
- [open\_by\_handle\_at](https://manual.cs50.io/2/open_by_handle_at) - obtain handle for a pathname and open file via a handle
- [openat](https://manual.cs50.io/2/openat) - open and possibly create a file
- [posix\_fadvise](https://manual.cs50.io/2/posix_fadvise) - predeclare an access pattern for file data
- [posix\_fallocate](https://manual.cs50.io/3/posix_fallocate) - allocate file space
- [readahead](https://manual.cs50.io/2/readahead) - initiate file readahead into page cache
- [splice](https://manual.cs50.io/2/splice) - splice data to/from a pipe
- [sync\_file\_range](https://manual.cs50.io/2/sync_file_range) - sync a file segment with disk
- [sync\_file\_range2](https://manual.cs50.io/2/sync_file_range2) - sync a file segment with disk
- [tee](https://manual.cs50.io/2/tee) - duplicating pipe content
- [vmsplice](https://manual.cs50.io/2/vmsplice) - splice user pages to/from a pipe
## [fenv.h](https://manual.cs50.io/#fenv.h)
- [feclearexcept](https://manual.cs50.io/3/feclearexcept) - floating-point rounding and exception handling
- [fedisableexcept](https://manual.cs50.io/3/fedisableexcept) - floating-point rounding and exception handling
- [feenableexcept](https://manual.cs50.io/3/feenableexcept) - floating-point rounding and exception handling
- [fegetenv](https://manual.cs50.io/3/fegetenv) - floating-point rounding and exception handling
- [fegetexcept](https://manual.cs50.io/3/fegetexcept) - floating-point rounding and exception handling
- [fegetexceptflag](https://manual.cs50.io/3/fegetexceptflag) - floating-point rounding and exception handling
- [fegetround](https://manual.cs50.io/3/fegetround) - floating-point rounding and exception handling
- [feholdexcept](https://manual.cs50.io/3/feholdexcept) - floating-point rounding and exception handling
- [fenv](https://manual.cs50.io/3/fenv) - floating-point rounding and exception handling
- [feraiseexcept](https://manual.cs50.io/3/feraiseexcept) - floating-point rounding and exception handling
- [fesetenv](https://manual.cs50.io/3/fesetenv) - floating-point rounding and exception handling
- [fesetexceptflag](https://manual.cs50.io/3/fesetexceptflag) - floating-point rounding and exception handling
- [fesetround](https://manual.cs50.io/3/fesetround) - floating-point rounding and exception handling
- [fetestexcept](https://manual.cs50.io/3/fetestexcept) - floating-point rounding and exception handling
- [feupdateenv](https://manual.cs50.io/3/feupdateenv) - floating-point rounding and exception handling
## [fmtmsg.h](https://manual.cs50.io/#fmtmsg.h)
- [addseverity](https://manual.cs50.io/3/addseverity) - introduce new severity classes
- [fmtmsg](https://manual.cs50.io/3/fmtmsg) - print formatted error messages
## [fnmatch.h](https://manual.cs50.io/#fnmatch.h)
- [fnmatch](https://manual.cs50.io/3/fnmatch) - match filename or pathname
## [ftw.h](https://manual.cs50.io/#ftw.h)
- [ftw](https://manual.cs50.io/3/ftw) - file tree walk
- [nftw](https://manual.cs50.io/3/nftw) - file tree walk
## [glob.h](https://manual.cs50.io/#glob.h)
- [glob](https://manual.cs50.io/3/glob) - find pathnames matching a pattern, free memory from gl...
- [globfree](https://manual.cs50.io/3/globfree) - find pathnames matching a pattern, free memory from gl...
## [grp.h](https://manual.cs50.io/#grp.h)
- [fgetgrent\_r](https://manual.cs50.io/3/fgetgrent_r) - get group file entry reentrantly
- [getgrent\_r](https://manual.cs50.io/3/getgrent_r) - get group file entry reentrantly
- [getgrouplist](https://manual.cs50.io/3/getgrouplist) - get list of groups to which a user belongs
- [putgrent](https://manual.cs50.io/3/putgrent) - write a group database entry to a file
## [iconv.h](https://manual.cs50.io/#iconv.h)
- [iconv](https://manual.cs50.io/3/iconv) - perform character set conversion
- [iconv\_close](https://manual.cs50.io/3/iconv_close) - deallocate descriptor for character set conversion
- [iconv\_open](https://manual.cs50.io/3/iconv_open) - allocate descriptor for character set conversion
## [inttypes.h](https://manual.cs50.io/#inttypes.h)
- [strtoimax](https://manual.cs50.io/3/strtoimax) - convert string to integer
- [strtoumax](https://manual.cs50.io/3/strtoumax) - convert string to integer
## [langinfo.h](https://manual.cs50.io/#langinfo.h)
- [nl\_langinfo](https://manual.cs50.io/3/nl_langinfo) - query language and locale information
- [nl\_langinfo\_l](https://manual.cs50.io/3/nl_langinfo_l) - query language and locale information
## [libgen.h](https://manual.cs50.io/#libgen.h)
- [basename](https://manual.cs50.io/3/basename) - parse pathname components
- [dirname](https://manual.cs50.io/3/dirname) - parse pathname components
## [limits.h](https://manual.cs50.io/#limits.h)
- [MB\_LEN\_MAX](https://manual.cs50.io/3/MB_LEN_MAX) - maximum multibyte length of a character across all loc...
- [realpath](https://manual.cs50.io/3/realpath) - return the canonicalized absolute pathname
## [locale.h](https://manual.cs50.io/#locale.h)
- [duplocale](https://manual.cs50.io/3/duplocale) - duplicate a locale object
- [freelocale](https://manual.cs50.io/3/freelocale) - create, modify, and free a locale object
- [locale](https://manual.cs50.io/7/locale) - description of multilanguage support
- [localeconv](https://manual.cs50.io/3/localeconv) - get numeric formatting information
- [newlocale](https://manual.cs50.io/3/newlocale) - create, modify, and free a locale object
- [setlocale](https://manual.cs50.io/3/setlocale) - set the current locale
- [uselocale](https://manual.cs50.io/3/uselocale) - set/get the locale for the calling thread
## [math.h](https://manual.cs50.io/#math.h)
- [acos](https://manual.cs50.io/3/acos) - arc cosine function
- [acosf](https://manual.cs50.io/3/acosf) - arc cosine function
- [acosh](https://manual.cs50.io/3/acosh) - inverse hyperbolic cosine function
- [acoshf](https://manual.cs50.io/3/acoshf) - inverse hyperbolic cosine function
- [acoshl](https://manual.cs50.io/3/acoshl) - inverse hyperbolic cosine function
- [acosl](https://manual.cs50.io/3/acosl) - arc cosine function
- [asin](https://manual.cs50.io/3/asin) - arc sine function
- [asinf](https://manual.cs50.io/3/asinf) - arc sine function
- [asinh](https://manual.cs50.io/3/asinh) - inverse hyperbolic sine function
- [asinhf](https://manual.cs50.io/3/asinhf) - inverse hyperbolic sine function
- [asinhl](https://manual.cs50.io/3/asinhl) - inverse hyperbolic sine function
- [asinl](https://manual.cs50.io/3/asinl) - arc sine function
- [atan](https://manual.cs50.io/3/atan) - arc tangent function
- [atan2](https://manual.cs50.io/3/atan2) - arc tangent function of two variables
- [atan2f](https://manual.cs50.io/3/atan2f) - arc tangent function of two variables
- [atan2l](https://manual.cs50.io/3/atan2l) - arc tangent function of two variables
- [atanf](https://manual.cs50.io/3/atanf) - arc tangent function
- [atanh](https://manual.cs50.io/3/atanh) - inverse hyperbolic tangent function
- [atanhf](https://manual.cs50.io/3/atanhf) - inverse hyperbolic tangent function
- [atanhl](https://manual.cs50.io/3/atanhl) - inverse hyperbolic tangent function
- [atanl](https://manual.cs50.io/3/atanl) - arc tangent function
- [cbrt](https://manual.cs50.io/3/cbrt) - cube root function
- [cbrtf](https://manual.cs50.io/3/cbrtf) - cube root function
- [cbrtl](https://manual.cs50.io/3/cbrtl) - cube root function
- [ceil](https://manual.cs50.io/3/ceil) - ceiling function: smallest integral value not less tha... calculate the ceiling of a number
- [ceilf](https://manual.cs50.io/3/ceilf) - ceiling function: smallest integral value not less tha...
- [ceill](https://manual.cs50.io/3/ceill) - ceiling function: smallest integral value not less tha...
- [copysign](https://manual.cs50.io/3/copysign) - copy sign of a number
- [copysignf](https://manual.cs50.io/3/copysignf) - copy sign of a number
- [copysignl](https://manual.cs50.io/3/copysignl) - copy sign of a number
- [cos](https://manual.cs50.io/3/cos) - cosine function
- [cosf](https://manual.cs50.io/3/cosf) - cosine function
- [cosh](https://manual.cs50.io/3/cosh) - hyperbolic cosine function
- [coshf](https://manual.cs50.io/3/coshf) - hyperbolic cosine function
- [coshl](https://manual.cs50.io/3/coshl) - hyperbolic cosine function
- [cosl](https://manual.cs50.io/3/cosl) - cosine function
- [drem](https://manual.cs50.io/3/drem) - floating-point remainder function
- [dremf](https://manual.cs50.io/3/dremf) - floating-point remainder function
- [dreml](https://manual.cs50.io/3/dreml) - floating-point remainder function
- [erf](https://manual.cs50.io/3/erf) - error function
- [erfc](https://manual.cs50.io/3/erfc) - complementary error function
- [erfcf](https://manual.cs50.io/3/erfcf) - complementary error function
- [erfcl](https://manual.cs50.io/3/erfcl) - complementary error function
- [erff](https://manual.cs50.io/3/erff) - error function
- [erfl](https://manual.cs50.io/3/erfl) - error function
- [exp](https://manual.cs50.io/3/exp) - base-e exponential function
- [exp10](https://manual.cs50.io/3/exp10) - base-10 exponential function
- [exp10f](https://manual.cs50.io/3/exp10f) - base-10 exponential function
- [exp10l](https://manual.cs50.io/3/exp10l) - base-10 exponential function
- [exp2](https://manual.cs50.io/3/exp2) - base-2 exponential function
- [exp2f](https://manual.cs50.io/3/exp2f) - base-2 exponential function
- [exp2l](https://manual.cs50.io/3/exp2l) - base-2 exponential function
- [expf](https://manual.cs50.io/3/expf) - base-e exponential function
- [expl](https://manual.cs50.io/3/expl) - base-e exponential function
- [expm1](https://manual.cs50.io/3/expm1) - exponential minus 1
- [expm1f](https://manual.cs50.io/3/expm1f) - exponential minus 1
- [expm1l](https://manual.cs50.io/3/expm1l) - exponential minus 1
- [fabs](https://manual.cs50.io/3/fabs) - absolute value of floating-point number
- [fabsf](https://manual.cs50.io/3/fabsf) - absolute value of floating-point number
- [fabsl](https://manual.cs50.io/3/fabsl) - absolute value of floating-point number
- [fdim](https://manual.cs50.io/3/fdim) - positive difference
- [fdimf](https://manual.cs50.io/3/fdimf) - positive difference
- [fdiml](https://manual.cs50.io/3/fdiml) - positive difference
- [finite](https://manual.cs50.io/3/finite) - BSD floating-point classification functions
- [finitef](https://manual.cs50.io/3/finitef) - BSD floating-point classification functions
- [finitel](https://manual.cs50.io/3/finitel) - BSD floating-point classification functions
- [floor](https://manual.cs50.io/3/floor) - largest integral value not greater than argument calculate the floor of a number
- [floorf](https://manual.cs50.io/3/floorf) - largest integral value not greater than argument
- [floorl](https://manual.cs50.io/3/floorl) - largest integral value not greater than argument
- [fma](https://manual.cs50.io/3/fma) - floating-point multiply and add
- [fmaf](https://manual.cs50.io/3/fmaf) - floating-point multiply and add
- [fmal](https://manual.cs50.io/3/fmal) - floating-point multiply and add
- [fmax](https://manual.cs50.io/3/fmax) - determine maximum of two floating-point numbers
- [fmaxf](https://manual.cs50.io/3/fmaxf) - determine maximum of two floating-point numbers
- [fmaxl](https://manual.cs50.io/3/fmaxl) - determine maximum of two floating-point numbers
- [fmin](https://manual.cs50.io/3/fmin) - determine minimum of two floating-point numbers
- [fminf](https://manual.cs50.io/3/fminf) - determine minimum of two floating-point numbers
- [fminl](https://manual.cs50.io/3/fminl) - determine minimum of two floating-point numbers
- [fmod](https://manual.cs50.io/3/fmod) - floating-point remainder function
- [fmodf](https://manual.cs50.io/3/fmodf) - floating-point remainder function
- [fmodl](https://manual.cs50.io/3/fmodl) - floating-point remainder function
- [fpclassify](https://manual.cs50.io/3/fpclassify) - floating-point classification macros
- [frexp](https://manual.cs50.io/3/frexp) - convert floating-point number to fractional and integr...
- [frexpf](https://manual.cs50.io/3/frexpf) - convert floating-point number to fractional and integr...
- [frexpl](https://manual.cs50.io/3/frexpl) - convert floating-point number to fractional and integr...
- [gamma](https://manual.cs50.io/3/gamma) - (logarithm of the) gamma function
- [gammaf](https://manual.cs50.io/3/gammaf) - (logarithm of the) gamma function
- [gammal](https://manual.cs50.io/3/gammal) - (logarithm of the) gamma function
- [HUGE\_VAL](https://manual.cs50.io/3/HUGE_VAL) - floating-point constants
- [HUGE\_VALF](https://manual.cs50.io/3/HUGE_VALF) - floating-point constants
- [HUGE\_VALL](https://manual.cs50.io/3/HUGE_VALL) - floating-point constants
- [hypot](https://manual.cs50.io/3/hypot) - Euclidean distance function
- [hypotf](https://manual.cs50.io/3/hypotf) - Euclidean distance function
- [hypotl](https://manual.cs50.io/3/hypotl) - Euclidean distance function
- [ilogb](https://manual.cs50.io/3/ilogb) - get integer exponent of a floating-point value
- [ilogbf](https://manual.cs50.io/3/ilogbf) - get integer exponent of a floating-point value
- [ilogbl](https://manual.cs50.io/3/ilogbl) - get integer exponent of a floating-point value
- [INFINITY](https://manual.cs50.io/3/INFINITY) - floating-point constants
- [isfinite](https://manual.cs50.io/3/isfinite) - floating-point classification macros
- [isgreater](https://manual.cs50.io/3/isgreater) - floating-point relational tests without exception for NaN
- [isgreaterequal](https://manual.cs50.io/3/isgreaterequal) - floating-point relational tests without exception for NaN
- [isinf](https://manual.cs50.io/3/isinf) - floating-point classification macros
- [isinff](https://manual.cs50.io/3/isinff) - BSD floating-point classification functions
- [isinfl](https://manual.cs50.io/3/isinfl) - BSD floating-point classification functions
- [isless](https://manual.cs50.io/3/isless) - floating-point relational tests without exception for NaN
- [islessequal](https://manual.cs50.io/3/islessequal) - floating-point relational tests without exception for NaN
- [islessgreater](https://manual.cs50.io/3/islessgreater) - floating-point relational tests without exception for NaN
- [isnan](https://manual.cs50.io/3/isnan) - floating-point classification macros
- [isnanf](https://manual.cs50.io/3/isnanf) - BSD floating-point classification functions
- [isnanl](https://manual.cs50.io/3/isnanl) - BSD floating-point classification functions
- [isnormal](https://manual.cs50.io/3/isnormal) - floating-point classification macros
- [isunordered](https://manual.cs50.io/3/isunordered) - floating-point relational tests without exception for NaN
- [j0](https://manual.cs50.io/3/j0) - Bessel functions of the first kind
- [j0f](https://manual.cs50.io/3/j0f) - Bessel functions of the first kind
- [j0l](https://manual.cs50.io/3/j0l) - Bessel functions of the first kind
- [j1](https://manual.cs50.io/3/j1) - Bessel functions of the first kind
- [j1f](https://manual.cs50.io/3/j1f) - Bessel functions of the first kind
- [j1l](https://manual.cs50.io/3/j1l) - Bessel functions of the first kind
- [jn](https://manual.cs50.io/3/jn) - Bessel functions of the first kind
- [jnf](https://manual.cs50.io/3/jnf) - Bessel functions of the first kind
- [jnl](https://manual.cs50.io/3/jnl) - Bessel functions of the first kind
- [ldexp](https://manual.cs50.io/3/ldexp) - multiply floating-point number by integral power of 2
- [ldexpf](https://manual.cs50.io/3/ldexpf) - multiply floating-point number by integral power of 2
- [ldexpl](https://manual.cs50.io/3/ldexpl) - multiply floating-point number by integral power of 2
- [lgamma](https://manual.cs50.io/3/lgamma) - log gamma function
- [lgamma\_r](https://manual.cs50.io/3/lgamma_r) - log gamma function
- [lgammaf](https://manual.cs50.io/3/lgammaf) - log gamma function
- [lgammaf\_r](https://manual.cs50.io/3/lgammaf_r) - log gamma function
- [lgammal](https://manual.cs50.io/3/lgammal) - log gamma function
- [lgammal\_r](https://manual.cs50.io/3/lgammal_r) - log gamma function
- [llrint](https://manual.cs50.io/3/llrint) - round to nearest integer
- [llrintf](https://manual.cs50.io/3/llrintf) - round to nearest integer
- [llrintl](https://manual.cs50.io/3/llrintl) - round to nearest integer
- [llround](https://manual.cs50.io/3/llround) - round to nearest integer
- [llroundf](https://manual.cs50.io/3/llroundf) - round to nearest integer
- [llroundl](https://manual.cs50.io/3/llroundl) - round to nearest integer
- [log](https://manual.cs50.io/3/log) - natural logarithmic function
- [log10](https://manual.cs50.io/3/log10) - base-10 logarithmic function
- [log10f](https://manual.cs50.io/3/log10f) - base-10 logarithmic function
- [log10l](https://manual.cs50.io/3/log10l) - base-10 logarithmic function
- [log1p](https://manual.cs50.io/3/log1p) - logarithm of 1 plus argument
- [log1pf](https://manual.cs50.io/3/log1pf) - logarithm of 1 plus argument
- [log1pl](https://manual.cs50.io/3/log1pl) - logarithm of 1 plus argument
- [log2](https://manual.cs50.io/3/log2) - base-2 logarithmic function calculate the base-2 logarithm of a number
- [log2f](https://manual.cs50.io/3/log2f) - base-2 logarithmic function
- [log2l](https://manual.cs50.io/3/log2l) - base-2 logarithmic function
- [logb](https://manual.cs50.io/3/logb) - get exponent of a floating-point value
- [logbf](https://manual.cs50.io/3/logbf) - get exponent of a floating-point value
- [logbl](https://manual.cs50.io/3/logbl) - get exponent of a floating-point value
- [logf](https://manual.cs50.io/3/logf) - natural logarithmic function
- [logl](https://manual.cs50.io/3/logl) - natural logarithmic function
- [lrint](https://manual.cs50.io/3/lrint) - round to nearest integer
- [lrintf](https://manual.cs50.io/3/lrintf) - round to nearest integer
- [lrintl](https://manual.cs50.io/3/lrintl) - round to nearest integer
- [lround](https://manual.cs50.io/3/lround) - round to nearest integer
- [lroundf](https://manual.cs50.io/3/lroundf) - round to nearest integer
- [lroundl](https://manual.cs50.io/3/lroundl) - round to nearest integer
- [math\_error](https://manual.cs50.io/7/math_error) - detecting errors from mathematical functions
- [matherr](https://manual.cs50.io/3/matherr) - SVID math library exception handling
- [modf](https://manual.cs50.io/3/modf) - extract signed integral and fractional values from flo...
- [modff](https://manual.cs50.io/3/modff) - extract signed integral and fractional values from flo...
- [modfl](https://manual.cs50.io/3/modfl) - extract signed integral and fractional values from flo...
- [NAN](https://manual.cs50.io/3/NAN) - floating-point constants
- [nan](https://manual.cs50.io/3/nan) - return 'Not a Number'
- [nanf](https://manual.cs50.io/3/nanf) - return 'Not a Number'
- [nanl](https://manual.cs50.io/3/nanl) - return 'Not a Number'
- [nearbyint](https://manual.cs50.io/3/nearbyint) - round to nearest integer
- [nearbyintf](https://manual.cs50.io/3/nearbyintf) - round to nearest integer
- [nearbyintl](https://manual.cs50.io/3/nearbyintl) - round to nearest integer
- [nextafter](https://manual.cs50.io/3/nextafter) - floating-point number manipulation
- [nextafterf](https://manual.cs50.io/3/nextafterf) - floating-point number manipulation
- [nextafterl](https://manual.cs50.io/3/nextafterl) - floating-point number manipulation
- [nextdown](https://manual.cs50.io/3/nextdown) - return next floating-point number toward positive/nega...
- [nextdownf](https://manual.cs50.io/3/nextdownf) - return next floating-point number toward positive/nega...
- [nextdownl](https://manual.cs50.io/3/nextdownl) - return next floating-point number toward positive/nega...
- [nexttoward](https://manual.cs50.io/3/nexttoward) - floating-point number manipulation
- [nexttowardf](https://manual.cs50.io/3/nexttowardf) - floating-point number manipulation
- [nexttowardl](https://manual.cs50.io/3/nexttowardl) - floating-point number manipulation
- [nextup](https://manual.cs50.io/3/nextup) - return next floating-point number toward positive/nega...
- [nextupf](https://manual.cs50.io/3/nextupf) - return next floating-point number toward positive/nega...
- [nextupl](https://manual.cs50.io/3/nextupl) - return next floating-point number toward positive/nega...
- [pow](https://manual.cs50.io/3/pow) - power functions raise a number to a power
- [pow10](https://manual.cs50.io/3/pow10) - base-10 power functions
- [pow10f](https://manual.cs50.io/3/pow10f) - base-10 power functions
- [pow10l](https://manual.cs50.io/3/pow10l) - base-10 power functions
- [powf](https://manual.cs50.io/3/powf) - power functions
- [powl](https://manual.cs50.io/3/powl) - power functions
- [remainder](https://manual.cs50.io/3/remainder) - floating-point remainder function
- [remainderf](https://manual.cs50.io/3/remainderf) - floating-point remainder function
- [remainderl](https://manual.cs50.io/3/remainderl) - floating-point remainder function
- [remquo](https://manual.cs50.io/3/remquo) - remainder and part of quotient
- [remquof](https://manual.cs50.io/3/remquof) - remainder and part of quotient
- [remquol](https://manual.cs50.io/3/remquol) - remainder and part of quotient
- [rint](https://manual.cs50.io/3/rint) - round to nearest integer
- [rintf](https://manual.cs50.io/3/rintf) - round to nearest integer
- [rintl](https://manual.cs50.io/3/rintl) - round to nearest integer
- [round](https://manual.cs50.io/3/round) - round to nearest integer, away from zero round a number to the nearest integer
- [roundf](https://manual.cs50.io/3/roundf) - round to nearest integer, away from zero
- [roundl](https://manual.cs50.io/3/roundl) - round to nearest integer, away from zero
- [scalb](https://manual.cs50.io/3/scalb) - multiply floating-point number by integral power of ra...
- [scalbf](https://manual.cs50.io/3/scalbf) - multiply floating-point number by integral power of ra...
- [scalbl](https://manual.cs50.io/3/scalbl) - multiply floating-point number by integral power of ra...
- [scalbln](https://manual.cs50.io/3/scalbln) - multiply floating-point number by integral power of radix
- [scalblnf](https://manual.cs50.io/3/scalblnf) - multiply floating-point number by integral power of radix
- [scalblnl](https://manual.cs50.io/3/scalblnl) - multiply floating-point number by integral power of radix
- [scalbn](https://manual.cs50.io/3/scalbn) - multiply floating-point number by integral power of radix
- [scalbnf](https://manual.cs50.io/3/scalbnf) - multiply floating-point number by integral power of radix
- [scalbnl](https://manual.cs50.io/3/scalbnl) - multiply floating-point number by integral power of radix
- [signbit](https://manual.cs50.io/3/signbit) - test sign of a real floating-point number
- [signgam](https://manual.cs50.io/3/signgam) - log gamma function
- [significand](https://manual.cs50.io/3/significand) - get mantissa of floating-point number
- [significandf](https://manual.cs50.io/3/significandf) - get mantissa of floating-point number
- [significandl](https://manual.cs50.io/3/significandl) - get mantissa of floating-point number
- [sin](https://manual.cs50.io/3/sin) - sine function
- [sincos](https://manual.cs50.io/3/sincos) - calculate sin and cos simultaneously
- [sincosf](https://manual.cs50.io/3/sincosf) - calculate sin and cos simultaneously
- [sincosl](https://manual.cs50.io/3/sincosl) - calculate sin and cos simultaneously
- [sinf](https://manual.cs50.io/3/sinf) - sine function
- [sinh](https://manual.cs50.io/3/sinh) - hyperbolic sine function
- [sinhf](https://manual.cs50.io/3/sinhf) - hyperbolic sine function
- [sinhl](https://manual.cs50.io/3/sinhl) - hyperbolic sine function
- [sinl](https://manual.cs50.io/3/sinl) - sine function
- [sqrt](https://manual.cs50.io/3/sqrt) - square root function calculate the square root of a number
- [sqrtf](https://manual.cs50.io/3/sqrtf) - square root function
- [sqrtl](https://manual.cs50.io/3/sqrtl) - square root function
- [tan](https://manual.cs50.io/3/tan) - tangent function
- [tanf](https://manual.cs50.io/3/tanf) - tangent function
- [tanh](https://manual.cs50.io/3/tanh) - hyperbolic tangent function
- [tanhf](https://manual.cs50.io/3/tanhf) - hyperbolic tangent function
- [tanhl](https://manual.cs50.io/3/tanhl) - hyperbolic tangent function
- [tanl](https://manual.cs50.io/3/tanl) - tangent function
- [tgamma](https://manual.cs50.io/3/tgamma) - true gamma function
- [tgammaf](https://manual.cs50.io/3/tgammaf) - true gamma function
- [tgammal](https://manual.cs50.io/3/tgammal) - true gamma function
- [trunc](https://manual.cs50.io/3/trunc) - round to integer, toward zero
- [truncf](https://manual.cs50.io/3/truncf) - round to integer, toward zero
- [truncl](https://manual.cs50.io/3/truncl) - round to integer, toward zero
- [y0](https://manual.cs50.io/3/y0) - Bessel functions of the second kind
- [y0f](https://manual.cs50.io/3/y0f) - Bessel functions of the second kind
- [y0l](https://manual.cs50.io/3/y0l) - Bessel functions of the second kind
- [y1](https://manual.cs50.io/3/y1) - Bessel functions of the second kind
- [y1f](https://manual.cs50.io/3/y1f) - Bessel functions of the second kind
- [y1l](https://manual.cs50.io/3/y1l) - Bessel functions of the second kind
- [yn](https://manual.cs50.io/3/yn) - Bessel functions of the second kind
- [ynf](https://manual.cs50.io/3/ynf) - Bessel functions of the second kind
- [ynl](https://manual.cs50.io/3/ynl) - Bessel functions of the second kind
## [monetary.h](https://manual.cs50.io/#monetary.h)
- [strfmon](https://manual.cs50.io/3/strfmon) - convert monetary value to a string
- [strfmon\_l](https://manual.cs50.io/3/strfmon_l) - convert monetary value to a string
## [mqueue.h](https://manual.cs50.io/#mqueue.h)
- [mq\_close](https://manual.cs50.io/3/mq_close) - close a message queue descriptor
- [mq\_getattr](https://manual.cs50.io/3/mq_getattr) - get/set message queue attributes
- [mq\_notify](https://manual.cs50.io/2/mq_notify) - register for notification when a message is available
- [mq\_notify](https://manual.cs50.io/3/mq_notify) - register for notification when a message is available
- [mq\_open](https://manual.cs50.io/2/mq_open) - open a message queue
- [mq\_open](https://manual.cs50.io/3/mq_open) - open a message queue
- [mq\_receive](https://manual.cs50.io/3/mq_receive) - receive a message from a message queue
- [mq\_send](https://manual.cs50.io/3/mq_send) - send a message to a message queue
- [mq\_setattr](https://manual.cs50.io/3/mq_setattr) - get/set message queue attributes
- [mq\_timedreceive](https://manual.cs50.io/2/mq_timedreceive) - receive a message from a message queue
- [mq\_timedreceive](https://manual.cs50.io/3/mq_timedreceive) - receive a message from a message queue
- [mq\_timedsend](https://manual.cs50.io/2/mq_timedsend) - send a message to a message queue
- [mq\_timedsend](https://manual.cs50.io/3/mq_timedsend) - send a message to a message queue
- [mq\_unlink](https://manual.cs50.io/2/mq_unlink) - remove a message queue
- [mq\_unlink](https://manual.cs50.io/3/mq_unlink) - remove a message queue
## [net/if.h](https://manual.cs50.io/#net/if.h)
- [if\_freenameindex](https://manual.cs50.io/3/if_freenameindex) - get network interface names and indexes
- [if\_indextoname](https://manual.cs50.io/3/if_indextoname) - mappings between network interface names and indexes
- [if\_nameindex](https://manual.cs50.io/3/if_nameindex) - get network interface names and indexes
- [if\_nametoindex](https://manual.cs50.io/3/if_nametoindex) - mappings between network interface names and indexes
## [netdb.h](https://manual.cs50.io/#netdb.h)
- [endhostent](https://manual.cs50.io/3/endhostent) - get network host entry
- [endnetent](https://manual.cs50.io/3/endnetent) - get network entry
- [endnetgrent](https://manual.cs50.io/3/endnetgrent) - handle network group entries
- [endprotoent](https://manual.cs50.io/3/endprotoent) - get protocol entry
- [endrpcent](https://manual.cs50.io/3/endrpcent) - get RPC entry
- [endservent](https://manual.cs50.io/3/endservent) - get service entry
- [gai\_cancel](https://manual.cs50.io/3/gai_cancel) - asynchronous network address and service translation
- [gai\_error](https://manual.cs50.io/3/gai_error) - asynchronous network address and service translation
- [gai\_suspend](https://manual.cs50.io/3/gai_suspend) - asynchronous network address and service translation
- [getaddrinfo\_a](https://manual.cs50.io/3/getaddrinfo_a) - asynchronous network address and service translation
- [gethostbyaddr](https://manual.cs50.io/3/gethostbyaddr) - get network host entry
- [gethostbyaddr\_r](https://manual.cs50.io/3/gethostbyaddr_r) - get network host entry
- [gethostbyname](https://manual.cs50.io/3/gethostbyname) - get network host entry
- [gethostbyname2](https://manual.cs50.io/3/gethostbyname2) - get network host entry
- [gethostbyname2\_r](https://manual.cs50.io/3/gethostbyname2_r) - get network host entry
- [gethostbyname\_r](https://manual.cs50.io/3/gethostbyname_r) - get network host entry
- [gethostent](https://manual.cs50.io/3/gethostent) - get network host entry
- [gethostent\_r](https://manual.cs50.io/3/gethostent_r) - get network host entry
- [getnetbyaddr](https://manual.cs50.io/3/getnetbyaddr) - get network entry
- [getnetbyaddr\_r](https://manual.cs50.io/3/getnetbyaddr_r) - get network entry (reentrant)
- [getnetbyname](https://manual.cs50.io/3/getnetbyname) - get network entry
- [getnetbyname\_r](https://manual.cs50.io/3/getnetbyname_r) - get network entry (reentrant)
- [getnetent](https://manual.cs50.io/3/getnetent) - get network entry
- [getnetent\_r](https://manual.cs50.io/3/getnetent_r) - get network entry (reentrant)
- [getnetgrent](https://manual.cs50.io/3/getnetgrent) - handle network group entries
- [getnetgrent\_r](https://manual.cs50.io/3/getnetgrent_r) - handle network group entries
- [getprotobyname](https://manual.cs50.io/3/getprotobyname) - get protocol entry
- [getprotobyname\_r](https://manual.cs50.io/3/getprotobyname_r) - get protocol entry (reentrant)
- [getprotobynumber](https://manual.cs50.io/3/getprotobynumber) - get protocol entry
- [getprotobynumber\_r](https://manual.cs50.io/3/getprotobynumber_r) - get protocol entry (reentrant)
- [getprotoent](https://manual.cs50.io/3/getprotoent) - get protocol entry
- [getprotoent\_r](https://manual.cs50.io/3/getprotoent_r) - get protocol entry (reentrant)
- [getrpcbyname](https://manual.cs50.io/3/getrpcbyname) - get RPC entry
- [getrpcbyname\_r](https://manual.cs50.io/3/getrpcbyname_r) - get RPC entry (reentrant)
- [getrpcbynumber](https://manual.cs50.io/3/getrpcbynumber) - get RPC entry
- [getrpcbynumber\_r](https://manual.cs50.io/3/getrpcbynumber_r) - get RPC entry (reentrant)
- [getrpcent](https://manual.cs50.io/3/getrpcent) - get RPC entry
- [getrpcent\_r](https://manual.cs50.io/3/getrpcent_r) - get RPC entry (reentrant)
- [getservbyname](https://manual.cs50.io/3/getservbyname) - get service entry
- [getservbyname\_r](https://manual.cs50.io/3/getservbyname_r) - get service entry (reentrant)
- [getservbyport](https://manual.cs50.io/3/getservbyport) - get service entry
- [getservbyport\_r](https://manual.cs50.io/3/getservbyport_r) - get service entry (reentrant)
- [getservent](https://manual.cs50.io/3/getservent) - get service entry
- [getservent\_r](https://manual.cs50.io/3/getservent_r) - get service entry (reentrant)
- [h\_errno](https://manual.cs50.io/3/h_errno) - get network host entry
- [herror](https://manual.cs50.io/3/herror) - get network host entry
- [hstrerror](https://manual.cs50.io/3/hstrerror) - get network host entry
- [innetgr](https://manual.cs50.io/3/innetgr) - handle network group entries
- [rexec](https://manual.cs50.io/3/rexec) - return stream to a remote command
- [rexec\_af](https://manual.cs50.io/3/rexec_af) - return stream to a remote command
- [sethostent](https://manual.cs50.io/3/sethostent) - get network host entry
- [setnetent](https://manual.cs50.io/3/setnetent) - get network entry
- [setnetgrent](https://manual.cs50.io/3/setnetgrent) - handle network group entries
- [setprotoent](https://manual.cs50.io/3/setprotoent) - get protocol entry
- [setrpcent](https://manual.cs50.io/3/setrpcent) - get RPC entry
- [setservent](https://manual.cs50.io/3/setservent) - get service entry
## [netinet/in.h](https://manual.cs50.io/#netinet/in.h)
- [dn\_comp](https://manual.cs50.io/3/dn_comp) - resolver routines
- [dn\_expand](https://manual.cs50.io/3/dn_expand) - resolver routines
- [res\_init](https://manual.cs50.io/3/res_init) - resolver routines
- [res\_mkquery](https://manual.cs50.io/3/res_mkquery) - resolver routines
- [res\_nclose](https://manual.cs50.io/3/res_nclose) - resolver routines
- [res\_ninit](https://manual.cs50.io/3/res_ninit) - resolver routines
- [res\_nmkquery](https://manual.cs50.io/3/res_nmkquery) - resolver routines
- [res\_nquery](https://manual.cs50.io/3/res_nquery) - resolver routines
- [res\_nquerydomain](https://manual.cs50.io/3/res_nquerydomain) - resolver routines
- [res\_nsearch](https://manual.cs50.io/3/res_nsearch) - resolver routines
- [res\_nsend](https://manual.cs50.io/3/res_nsend) - resolver routines
- [res\_query](https://manual.cs50.io/3/res_query) - resolver routines
- [res\_querydomain](https://manual.cs50.io/3/res_querydomain) - resolver routines
- [res\_search](https://manual.cs50.io/3/res_search) - resolver routines
- [res\_send](https://manual.cs50.io/3/res_send) - resolver routines
- [resolver](https://manual.cs50.io/3/resolver) - resolver routines
## [nl\_types.h](https://manual.cs50.io/#nl_types.h)
- [catclose](https://manual.cs50.io/3/catclose) - open/close a message catalog
- [catgets](https://manual.cs50.io/3/catgets) - get message from a message catalog
- [catopen](https://manual.cs50.io/3/catopen) - open/close a message catalog
## [poll.h](https://manual.cs50.io/#poll.h)
- [poll](https://manual.cs50.io/2/poll) - wait for some event on a file descriptor
- [ppoll](https://manual.cs50.io/2/ppoll) - wait for some event on a file descriptor
## [pthread.h](https://manual.cs50.io/#pthread.h)
- [pthread\_attr\_destroy](https://manual.cs50.io/3/pthread_attr_destroy) - initialize and destroy thread attributes object
- [pthread\_attr\_getaffinity\_np](https://manual.cs50.io/3/pthread_attr_getaffinity_np) - set/get CPU affinity attribute in thread at...
- [pthread\_attr\_getdetachstate](https://manual.cs50.io/3/pthread_attr_getdetachstate) - set/get detach state attribute in thread at...
- [pthread\_attr\_getguardsize](https://manual.cs50.io/3/pthread_attr_getguardsize) - set/get guard size attribute in thread attrib...
- [pthread\_attr\_getinheritsched](https://manual.cs50.io/3/pthread_attr_getinheritsched) - set/get inherit-scheduler attribute in thr...
- [pthread\_attr\_getschedparam](https://manual.cs50.io/3/pthread_attr_getschedparam) - set/get scheduling parameter attributes in t...
- [pthread\_attr\_getschedpolicy](https://manual.cs50.io/3/pthread_attr_getschedpolicy) - set/get scheduling policy attribute in thre...
- [pthread\_attr\_getscope](https://manual.cs50.io/3/pthread_attr_getscope) - set/get contention scope attribute in thread attr...
- [pthread\_attr\_getsigmask\_np](https://manual.cs50.io/3/pthread_attr_getsigmask_np) - set/get signal mask attribute in thread attr...
- [pthread\_attr\_getstack](https://manual.cs50.io/3/pthread_attr_getstack) - set/get stack attributes in thread attributes object
- [pthread\_attr\_getstackaddr](https://manual.cs50.io/3/pthread_attr_getstackaddr) - set/get stack address attribute in thread att...
- [pthread\_attr\_getstacksize](https://manual.cs50.io/3/pthread_attr_getstacksize) - set/get stack size attribute in thread attrib...
- [pthread\_attr\_init](https://manual.cs50.io/3/pthread_attr_init) - initialize and destroy thread attributes object
- [pthread\_attr\_setaffinity\_np](https://manual.cs50.io/3/pthread_attr_setaffinity_np) - set/get CPU affinity attribute in thread at...
- [pthread\_attr\_setdetachstate](https://manual.cs50.io/3/pthread_attr_setdetachstate) - set/get detach state attribute in thread at...
- [pthread\_attr\_setguardsize](https://manual.cs50.io/3/pthread_attr_setguardsize) - set/get guard size attribute in thread attrib...
- [pthread\_attr\_setinheritsched](https://manual.cs50.io/3/pthread_attr_setinheritsched) - set/get inherit-scheduler attribute in thr...
- [pthread\_attr\_setschedparam](https://manual.cs50.io/3/pthread_attr_setschedparam) - set/get scheduling parameter attributes in t...
- [pthread\_attr\_setschedpolicy](https://manual.cs50.io/3/pthread_attr_setschedpolicy) - set/get scheduling policy attribute in thre...
- [pthread\_attr\_setscope](https://manual.cs50.io/3/pthread_attr_setscope) - set/get contention scope attribute in thread attr...
- [pthread\_attr\_setsigmask\_np](https://manual.cs50.io/3/pthread_attr_setsigmask_np) - set/get signal mask attribute in thread attr...
- [pthread\_attr\_setstack](https://manual.cs50.io/3/pthread_attr_setstack) - set/get stack attributes in thread attributes object
- [pthread\_attr\_setstackaddr](https://manual.cs50.io/3/pthread_attr_setstackaddr) - set/get stack address attribute in thread att...
- [pthread\_attr\_setstacksize](https://manual.cs50.io/3/pthread_attr_setstacksize) - set/get stack size attribute in thread attrib...
- [pthread\_cancel](https://manual.cs50.io/3/pthread_cancel) - send a cancelation request to a thread
- [pthread\_cleanup\_pop](https://manual.cs50.io/3/pthread_cleanup_pop) - push and pop thread cancelation clean-up handlers
- [pthread\_cleanup\_pop\_restore\_np](https://manual.cs50.io/3/pthread_cleanup_pop_restore_np) - push and pop thread cancelation clean-up...
- [pthread\_cleanup\_push](https://manual.cs50.io/3/pthread_cleanup_push) - push and pop thread cancelation clean-up handlers
- [pthread\_cleanup\_push\_defer\_np](https://manual.cs50.io/3/pthread_cleanup_push_defer_np) - push and pop thread cancelation clean-up ...
- [pthread\_create](https://manual.cs50.io/3/pthread_create) - create a new thread
- [pthread\_detach](https://manual.cs50.io/3/pthread_detach) - detach a thread
- [pthread\_equal](https://manual.cs50.io/3/pthread_equal) - compare thread IDs
- [pthread\_exit](https://manual.cs50.io/3/pthread_exit) - terminate calling thread
- [pthread\_getaffinity\_np](https://manual.cs50.io/3/pthread_getaffinity_np) - set/get CPU affinity of a thread
- [pthread\_getattr\_default\_np](https://manual.cs50.io/3/pthread_getattr_default_np) - get or set default thread-creation attributes
- [pthread\_getattr\_np](https://manual.cs50.io/3/pthread_getattr_np) - get attributes of created thread
- [pthread\_getconcurrency](https://manual.cs50.io/3/pthread_getconcurrency) - set/get the concurrency level
- [pthread\_getcpuclockid](https://manual.cs50.io/3/pthread_getcpuclockid) - retrieve ID of a thread's CPU time clock
- [pthread\_getname\_np](https://manual.cs50.io/3/pthread_getname_np) - set/get the name of a thread
- [pthread\_getschedparam](https://manual.cs50.io/3/pthread_getschedparam) - set/get scheduling policy and parameters of a thread
- [pthread\_join](https://manual.cs50.io/3/pthread_join) - join with a terminated thread
- [pthread\_kill\_other\_threads\_np](https://manual.cs50.io/3/pthread_kill_other_threads_np) - terminate all other threads in process
- [pthread\_mutex\_consistent](https://manual.cs50.io/3/pthread_mutex_consistent) - make a robust mutex consistent
- [pthread\_mutex\_consistent\_np](https://manual.cs50.io/3/pthread_mutex_consistent_np) - make a robust mutex consistent
- [pthread\_mutexattr\_getpshared](https://manual.cs50.io/3/pthread_mutexattr_getpshared) - get/set process-shared mutex attribute
- [pthread\_mutexattr\_getrobust](https://manual.cs50.io/3/pthread_mutexattr_getrobust) - get and set the robustness attribute of a m...
- [pthread\_mutexattr\_getrobust\_np](https://manual.cs50.io/3/pthread_mutexattr_getrobust_np) - get and set the robustness attribute of ...
- [pthread\_mutexattr\_setpshared](https://manual.cs50.io/3/pthread_mutexattr_setpshared) - get/set process-shared mutex attribute
- [pthread\_mutexattr\_setrobust](https://manual.cs50.io/3/pthread_mutexattr_setrobust) - get and set the robustness attribute of a m...
- [pthread\_mutexattr\_setrobust\_np](https://manual.cs50.io/3/pthread_mutexattr_setrobust_np) - get and set the robustness attribute of ...
- [pthread\_rwlockattr\_getkind\_np](https://manual.cs50.io/3/pthread_rwlockattr_getkind_np) - set/get the read-write lock kind of the t...
- [pthread\_rwlockattr\_setkind\_np](https://manual.cs50.io/3/pthread_rwlockattr_setkind_np) - set/get the read-write lock kind of the t...
- [pthread\_self](https://manual.cs50.io/3/pthread_self) - obtain ID of the calling thread
- [pthread\_setaffinity\_np](https://manual.cs50.io/3/pthread_setaffinity_np) - set/get CPU affinity of a thread
- [pthread\_setattr\_default\_np](https://manual.cs50.io/3/pthread_setattr_default_np) - get or set default thread-creation attributes
- [pthread\_setcancelstate](https://manual.cs50.io/3/pthread_setcancelstate) - set cancelability state and type
- [pthread\_setcanceltype](https://manual.cs50.io/3/pthread_setcanceltype) - set cancelability state and type
- [pthread\_setconcurrency](https://manual.cs50.io/3/pthread_setconcurrency) - set/get the concurrency level
- [pthread\_setname\_np](https://manual.cs50.io/3/pthread_setname_np) - set/get the name of a thread
- [pthread\_setschedparam](https://manual.cs50.io/3/pthread_setschedparam) - set/get scheduling policy and parameters of a thread
- [pthread\_setschedprio](https://manual.cs50.io/3/pthread_setschedprio) - set scheduling priority of a thread
- [pthread\_spin\_destroy](https://manual.cs50.io/3/pthread_spin_destroy) - initialize or destroy a spin lock
- [pthread\_spin\_init](https://manual.cs50.io/3/pthread_spin_init) - initialize or destroy a spin lock
- [pthread\_spin\_lock](https://manual.cs50.io/3/pthread_spin_lock) - lock and unlock a spin lock
- [pthread\_spin\_trylock](https://manual.cs50.io/3/pthread_spin_trylock) - lock and unlock a spin lock
- [pthread\_spin\_unlock](https://manual.cs50.io/3/pthread_spin_unlock) - lock and unlock a spin lock
- [pthread\_testcancel](https://manual.cs50.io/3/pthread_testcancel) - request delivery of any pending cancelation request
- [pthread\_timedjoin\_np](https://manual.cs50.io/3/pthread_timedjoin_np) - try to join with a terminated thread
- [pthread\_tryjoin\_np](https://manual.cs50.io/3/pthread_tryjoin_np) - try to join with a terminated thread
- [pthread\_yield](https://manual.cs50.io/3/pthread_yield) - yield the processor
## [pwd.h](https://manual.cs50.io/#pwd.h)
- [fgetpwent\_r](https://manual.cs50.io/3/fgetpwent_r) - get passwd file entry reentrantly
- [getpwent\_r](https://manual.cs50.io/3/getpwent_r) - get passwd file entry reentrantly
## [regex.h](https://manual.cs50.io/#regex.h)
- [regcomp](https://manual.cs50.io/3/regcomp) - POSIX regex functions
- [regerror](https://manual.cs50.io/3/regerror) - POSIX regex functions
- [regex](https://manual.cs50.io/3/regex) - POSIX regex functions
- [regexec](https://manual.cs50.io/3/regexec) - POSIX regex functions
- [regfree](https://manual.cs50.io/3/regfree) - POSIX regex functions
## [sched.h](https://manual.cs50.io/#sched.h)
- [\_\_clone2](https://manual.cs50.io/2/__clone2) - create a child process
- [clone](https://manual.cs50.io/2/clone) - create a child process
- [clone2](https://manual.cs50.io/2/clone2) - create a child process
- [clone3](https://manual.cs50.io/2/clone3) - create a child process
- [CPU\_ALLOC](https://manual.cs50.io/3/CPU_ALLOC) - macros for manipulating CPU sets
- [CPU\_ALLOC\_SIZE](https://manual.cs50.io/3/CPU_ALLOC_SIZE) - macros for manipulating CPU sets
- [CPU\_AND](https://manual.cs50.io/3/CPU_AND) - macros for manipulating CPU sets
- [CPU\_AND\_S](https://manual.cs50.io/3/CPU_AND_S) - macros for manipulating CPU sets
- [CPU\_CLR](https://manual.cs50.io/3/CPU_CLR) - macros for manipulating CPU sets
- [CPU\_CLR\_S](https://manual.cs50.io/3/CPU_CLR_S) - macros for manipulating CPU sets
- [CPU\_COUNT](https://manual.cs50.io/3/CPU_COUNT) - macros for manipulating CPU sets
- [CPU\_COUNT\_S](https://manual.cs50.io/3/CPU_COUNT_S) - macros for manipulating CPU sets
- [CPU\_EQUAL](https://manual.cs50.io/3/CPU_EQUAL) - macros for manipulating CPU sets
- [CPU\_EQUAL\_S](https://manual.cs50.io/3/CPU_EQUAL_S) - macros for manipulating CPU sets
- [CPU\_FREE](https://manual.cs50.io/3/CPU_FREE) - macros for manipulating CPU sets
- [CPU\_ISSET](https://manual.cs50.io/3/CPU_ISSET) - macros for manipulating CPU sets
- [CPU\_ISSET\_S](https://manual.cs50.io/3/CPU_ISSET_S) - macros for manipulating CPU sets
- [CPU\_OR](https://manual.cs50.io/3/CPU_OR) - macros for manipulating CPU sets
- [CPU\_OR\_S](https://manual.cs50.io/3/CPU_OR_S) - macros for manipulating CPU sets
- [CPU\_SET](https://manual.cs50.io/3/CPU_SET) - macros for manipulating CPU sets
- [CPU\_SET\_S](https://manual.cs50.io/3/CPU_SET_S) - macros for manipulating CPU sets
- [CPU\_XOR](https://manual.cs50.io/3/CPU_XOR) - macros for manipulating CPU sets
- [CPU\_XOR\_S](https://manual.cs50.io/3/CPU_XOR_S) - macros for manipulating CPU sets
- [CPU\_ZERO](https://manual.cs50.io/3/CPU_ZERO) - macros for manipulating CPU sets
- [CPU\_ZERO\_S](https://manual.cs50.io/3/CPU_ZERO_S) - macros for manipulating CPU sets
- [getcpu](https://manual.cs50.io/2/getcpu) - determine CPU and NUMA node on which the calling threa...
- [sched\_get\_priority\_max](https://manual.cs50.io/2/sched_get_priority_max) - get static priority range
- [sched\_get\_priority\_min](https://manual.cs50.io/2/sched_get_priority_min) - get static priority range
- [sched\_getaffinity](https://manual.cs50.io/2/sched_getaffinity) - set and get a thread's CPU affinity mask
- [sched\_getcpu](https://manual.cs50.io/3/sched_getcpu) - determine CPU on which the calling thread is running
- [sched\_getparam](https://manual.cs50.io/2/sched_getparam) - set and get scheduling parameters
- [sched\_getscheduler](https://manual.cs50.io/2/sched_getscheduler) - set and get scheduling policy/parameters
- [sched\_rr\_get\_interval](https://manual.cs50.io/2/sched_rr_get_interval) - get the SCHED\_RR interval for the named process
- [sched\_setaffinity](https://manual.cs50.io/2/sched_setaffinity) - set and get a thread's CPU affinity mask
- [sched\_setparam](https://manual.cs50.io/2/sched_setparam) - set and get scheduling parameters
- [sched\_setscheduler](https://manual.cs50.io/2/sched_setscheduler) - set and get scheduling policy/parameters
- [sched\_yield](https://manual.cs50.io/2/sched_yield) - yield the processor
- [setns](https://manual.cs50.io/2/setns) - reassociate thread with a namespace
- [unshare](https://manual.cs50.io/2/unshare) - disassociate parts of the process execution context
## [search.h](https://manual.cs50.io/#search.h)
- [hcreate](https://manual.cs50.io/3/hcreate) - hash table management
- [hcreate\_r](https://manual.cs50.io/3/hcreate_r) - hash table management
- [hdestroy](https://manual.cs50.io/3/hdestroy) - hash table management
- [hdestroy\_r](https://manual.cs50.io/3/hdestroy_r) - hash table management
- [hsearch](https://manual.cs50.io/3/hsearch) - hash table management
- [hsearch\_r](https://manual.cs50.io/3/hsearch_r) - hash table management
- [insque](https://manual.cs50.io/3/insque) - insert/remove an item from a queue
- [lfind](https://manual.cs50.io/3/lfind) - linear search of an array
- [lsearch](https://manual.cs50.io/3/lsearch) - linear search of an array
- [remque](https://manual.cs50.io/3/remque) - insert/remove an item from a queue
- [tdelete](https://manual.cs50.io/3/tdelete) - manage a binary search tree
- [tdestroy](https://manual.cs50.io/3/tdestroy) - manage a binary search tree
- [tfind](https://manual.cs50.io/3/tfind) - manage a binary search tree
- [tsearch](https://manual.cs50.io/3/tsearch) - manage a binary search tree
- [twalk](https://manual.cs50.io/3/twalk) - manage a binary search tree
- [twalk\_r](https://manual.cs50.io/3/twalk_r) - manage a binary search tree
## [semaphore.h](https://manual.cs50.io/#semaphore.h)
- [sem\_close](https://manual.cs50.io/3/sem_close) - close a named semaphore
- [sem\_destroy](https://manual.cs50.io/3/sem_destroy) - destroy an unnamed semaphore
- [sem\_getvalue](https://manual.cs50.io/3/sem_getvalue) - get the value of a semaphore
- [sem\_init](https://manual.cs50.io/3/sem_init) - initialize an unnamed semaphore
- [sem\_open](https://manual.cs50.io/3/sem_open) - initialize and open a named semaphore
- [sem\_post](https://manual.cs50.io/3/sem_post) - unlock a semaphore
- [sem\_timedwait](https://manual.cs50.io/3/sem_timedwait) - lock a semaphore
- [sem\_trywait](https://manual.cs50.io/3/sem_trywait) - lock a semaphore
- [sem\_unlink](https://manual.cs50.io/3/sem_unlink) - remove a named semaphore
- [sem\_wait](https://manual.cs50.io/3/sem_wait) - lock a semaphore
## [setjmp.h](https://manual.cs50.io/#setjmp.h)
- [longjmp](https://manual.cs50.io/3/longjmp) - performing a nonlocal goto
- [setjmp](https://manual.cs50.io/3/setjmp) - performing a nonlocal goto
- [siglongjmp](https://manual.cs50.io/3/siglongjmp) - performing a nonlocal goto
- [sigsetjmp](https://manual.cs50.io/3/sigsetjmp) - performing a nonlocal goto
## [signal.h](https://manual.cs50.io/#signal.h)
- [bsd\_signal](https://manual.cs50.io/3/bsd_signal) - signal handling with BSD semantics
- [gsignal](https://manual.cs50.io/3/gsignal) - software signal facility
- [kill](https://manual.cs50.io/2/kill) - send signal to a process
- [killpg](https://manual.cs50.io/3/killpg) - send signal to a process group
- [psiginfo](https://manual.cs50.io/3/psiginfo) - print signal description
- [psignal](https://manual.cs50.io/3/psignal) - print signal description
- [pthread\_kill](https://manual.cs50.io/3/pthread_kill) - send a signal to a thread
- [pthread\_sigmask](https://manual.cs50.io/3/pthread_sigmask) - examine and change mask of blocked signals
- [pthread\_sigqueue](https://manual.cs50.io/3/pthread_sigqueue) - queue a signal and data to a thread
- [raise](https://manual.cs50.io/3/raise) - send a signal to the caller
- [rt\_sigaction](https://manual.cs50.io/2/rt_sigaction) - examine and change a signal action
- [rt\_sigpending](https://manual.cs50.io/2/rt_sigpending) - examine pending signals
- [rt\_sigprocmask](https://manual.cs50.io/2/rt_sigprocmask) - examine and change blocked signals
- [rt\_sigsuspend](https://manual.cs50.io/2/rt_sigsuspend) - wait for a signal
- [rt\_sigtimedwait](https://manual.cs50.io/2/rt_sigtimedwait) - synchronously wait for queued signals
- [sigaction](https://manual.cs50.io/2/sigaction) - examine and change a signal action
- [sigaddset](https://manual.cs50.io/3/sigaddset) - POSIX signal set operations
- [sigaltstack](https://manual.cs50.io/2/sigaltstack) - set and/or get signal stack context
- [sigandset](https://manual.cs50.io/3/sigandset) - POSIX signal set operations
- [sigblock](https://manual.cs50.io/3/sigblock) - BSD signal API
- [sigdelset](https://manual.cs50.io/3/sigdelset) - POSIX signal set operations
- [sigemptyset](https://manual.cs50.io/3/sigemptyset) - POSIX signal set operations
- [sigfillset](https://manual.cs50.io/3/sigfillset) - POSIX signal set operations
- [siggetmask](https://manual.cs50.io/3/siggetmask) - BSD signal API
- [sighold](https://manual.cs50.io/3/sighold) - System V signal API
- [sigignore](https://manual.cs50.io/3/sigignore) - System V signal API
- [siginterrupt](https://manual.cs50.io/3/siginterrupt) - allow signals to interrupt system calls
- [sigisemptyset](https://manual.cs50.io/3/sigisemptyset) - POSIX signal set operations
- [sigismember](https://manual.cs50.io/3/sigismember) - POSIX signal set operations
- [sigmask](https://manual.cs50.io/3/sigmask) - BSD signal API
- [signal](https://manual.cs50.io/2/signal) - ANSI C signal handling
- [sigorset](https://manual.cs50.io/3/sigorset) - POSIX signal set operations
- [sigpause](https://manual.cs50.io/3/sigpause) - atomically release blocked signals and wait for interrupt
- [sigpending](https://manual.cs50.io/2/sigpending) - examine pending signals
- [sigprocmask](https://manual.cs50.io/2/sigprocmask) - examine and change blocked signals
- [sigqueue](https://manual.cs50.io/3/sigqueue) - queue a signal and data to a process
- [sigrelse](https://manual.cs50.io/3/sigrelse) - System V signal API
- [sigset](https://manual.cs50.io/3/sigset) - System V signal API
- [sigsetmask](https://manual.cs50.io/3/sigsetmask) - BSD signal API
- [sigsetops](https://manual.cs50.io/3/sigsetops) - POSIX signal set operations
- [sigstack](https://manual.cs50.io/3/sigstack) - set and/or get signal stack context
- [sigsuspend](https://manual.cs50.io/2/sigsuspend) - wait for a signal
- [sigtimedwait](https://manual.cs50.io/2/sigtimedwait) - synchronously wait for queued signals
- [sigvec](https://manual.cs50.io/3/sigvec) - BSD signal API
- [sigwait](https://manual.cs50.io/3/sigwait) - wait for a signal
- [sigwaitinfo](https://manual.cs50.io/2/sigwaitinfo) - synchronously wait for queued signals
- [ssignal](https://manual.cs50.io/3/ssignal) - software signal facility
- [sysv\_signal](https://manual.cs50.io/3/sysv_signal) - signal handling with System V semantics
## [spawn.h](https://manual.cs50.io/#spawn.h)
- [posix\_spawn](https://manual.cs50.io/3/posix_spawn) - spawn a process
- [posix\_spawnp](https://manual.cs50.io/3/posix_spawnp) - spawn a process
## [stdarg.h](https://manual.cs50.io/#stdarg.h)
- [stdarg](https://manual.cs50.io/3/stdarg) - variable argument lists
- [va\_arg](https://manual.cs50.io/3/va_arg) - variable argument lists
- [va\_copy](https://manual.cs50.io/3/va_copy) - variable argument lists
- [va\_end](https://manual.cs50.io/3/va_end) - variable argument lists
- [va\_start](https://manual.cs50.io/3/va_start) - variable argument lists
## [stddef.h](https://manual.cs50.io/#stddef.h)
- [offsetof](https://manual.cs50.io/3/offsetof) - offset of a structure member
- [wcstoimax](https://manual.cs50.io/3/wcstoimax) - convert wide-character string to integer
- [wcstoumax](https://manual.cs50.io/3/wcstoumax) - convert wide-character string to integer
## [stdio.h](https://manual.cs50.io/#stdio.h)
- [\_\_fbufsize](https://manual.cs50.io/3/__fbufsize) - interfaces to stdio FILE structure
- [\_\_flbf](https://manual.cs50.io/3/__flbf) - interfaces to stdio FILE structure
- [\_\_fpending](https://manual.cs50.io/3/__fpending) - interfaces to stdio FILE structure
- [\_\_fpurge](https://manual.cs50.io/3/__fpurge) - purge a stream
- [\_\_freadable](https://manual.cs50.io/3/__freadable) - interfaces to stdio FILE structure
- [\_\_freading](https://manual.cs50.io/3/__freading) - interfaces to stdio FILE structure
- [\_\_fsetlocking](https://manual.cs50.io/3/__fsetlocking) - interfaces to stdio FILE structure
- [\_\_fwritable](https://manual.cs50.io/3/__fwritable) - interfaces to stdio FILE structure
- [\_\_fwriting](https://manual.cs50.io/3/__fwriting) - interfaces to stdio FILE structure
- [\_flushlbf](https://manual.cs50.io/3/_flushlbf) - interfaces to stdio FILE structure
- [addmntent](https://manual.cs50.io/3/addmntent) - get filesystem descriptor file entry
- [asprintf](https://manual.cs50.io/3/asprintf) - print to allocated string
- [clearerr](https://manual.cs50.io/3/clearerr) - check and reset stream status
- [clearerr\_unlocked](https://manual.cs50.io/3/clearerr_unlocked) - nonlocking stdio functions
- [ctermid](https://manual.cs50.io/3/ctermid) - get controlling terminal name
- [dprintf](https://manual.cs50.io/3/dprintf) - formatted output conversion
- [endmntent](https://manual.cs50.io/3/endmntent) - get filesystem descriptor file entry
- [fclose](https://manual.cs50.io/3/fclose) - close a stream close a file
- [fcloseall](https://manual.cs50.io/3/fcloseall) - close all open streams
- [fdopen](https://manual.cs50.io/3/fdopen) - stream open functions
- [feof](https://manual.cs50.io/3/feof) - check and reset stream status
- [feof\_unlocked](https://manual.cs50.io/3/feof_unlocked) - nonlocking stdio functions
- [ferror](https://manual.cs50.io/3/ferror) - check and reset stream status
- [ferror\_unlocked](https://manual.cs50.io/3/ferror_unlocked) - nonlocking stdio functions
- [fflush](https://manual.cs50.io/3/fflush) - flush a stream
- [fflush\_unlocked](https://manual.cs50.io/3/fflush_unlocked) - nonlocking stdio functions
- [fgetc](https://manual.cs50.io/3/fgetc) - input of characters and strings
- [fgetc\_unlocked](https://manual.cs50.io/3/fgetc_unlocked) - nonlocking stdio functions
- [fgetgrent](https://manual.cs50.io/3/fgetgrent) - get group file entry
- [fgetpos](https://manual.cs50.io/3/fgetpos) - reposition a stream
- [fgetpwent](https://manual.cs50.io/3/fgetpwent) - get password file entry
- [fgets](https://manual.cs50.io/3/fgets) - input of characters and strings
- [fgets\_unlocked](https://manual.cs50.io/3/fgets_unlocked) - nonlocking stdio functions
- [fgetwc](https://manual.cs50.io/3/fgetwc) - read a wide character from a FILE stream
- [fgetwc\_unlocked](https://manual.cs50.io/3/fgetwc_unlocked) - nonlocking stdio functions
- [fgetws\_unlocked](https://manual.cs50.io/3/fgetws_unlocked) - nonlocking stdio functions
- [fileno](https://manual.cs50.io/3/fileno) - obtain file descriptor of a stdio stream
- [fileno\_unlocked](https://manual.cs50.io/3/fileno_unlocked) - nonlocking stdio functions
- [flockfile](https://manual.cs50.io/3/flockfile) - lock FILE for stdio
- [fmemopen](https://manual.cs50.io/3/fmemopen) - open memory as stream
- [fopen](https://manual.cs50.io/3/fopen) - stream open functions open a file
- [fopencookie](https://manual.cs50.io/3/fopencookie) - open a custom stream
- [fprintf](https://manual.cs50.io/3/fprintf) - formatted output conversion print to a file
- [fpurge](https://manual.cs50.io/3/fpurge) - purge a stream
- [fputc](https://manual.cs50.io/3/fputc) - output of characters and strings
- [fputc\_unlocked](https://manual.cs50.io/3/fputc_unlocked) - nonlocking stdio functions
- [fputs](https://manual.cs50.io/3/fputs) - output of characters and strings
- [fputs\_unlocked](https://manual.cs50.io/3/fputs_unlocked) - nonlocking stdio functions
- [fputwc](https://manual.cs50.io/3/fputwc) - write a wide character to a FILE stream
- [fputwc\_unlocked](https://manual.cs50.io/3/fputwc_unlocked) - nonlocking stdio functions
- [fputws\_unlocked](https://manual.cs50.io/3/fputws_unlocked) - nonlocking stdio functions
- [fread](https://manual.cs50.io/3/fread) - binary stream input/output read bytes from a file
- [fread\_unlocked](https://manual.cs50.io/3/fread_unlocked) - nonlocking stdio functions
- [freopen](https://manual.cs50.io/3/freopen) - stream open functions
- [fscanf](https://manual.cs50.io/3/fscanf) - input FILE format conversion get input from a file
- [fseek](https://manual.cs50.io/3/fseek) - reposition a stream
- [fseeko](https://manual.cs50.io/3/fseeko) - seek to or report file position
- [fsetpos](https://manual.cs50.io/3/fsetpos) - reposition a stream
- [ftell](https://manual.cs50.io/3/ftell) - reposition a stream
- [ftello](https://manual.cs50.io/3/ftello) - seek to or report file position
- [ftrylockfile](https://manual.cs50.io/3/ftrylockfile) - lock FILE for stdio
- [funlockfile](https://manual.cs50.io/3/funlockfile) - lock FILE for stdio
- [fwprintf](https://manual.cs50.io/3/fwprintf) - formatted wide-character output conversion
- [fwrite](https://manual.cs50.io/3/fwrite) - binary stream input/output write bytes to a file
- [fwrite\_unlocked](https://manual.cs50.io/3/fwrite_unlocked) - nonlocking stdio functions
- [getc](https://manual.cs50.io/3/getc) - input of characters and strings
- [getc\_unlocked](https://manual.cs50.io/3/getc_unlocked) - nonlocking stdio functions
- [getchar](https://manual.cs50.io/3/getchar) - input of characters and strings
- [getchar\_unlocked](https://manual.cs50.io/3/getchar_unlocked) - nonlocking stdio functions
- [getdelim](https://manual.cs50.io/3/getdelim) - delimited string input
- [getline](https://manual.cs50.io/3/getline) - delimited string input
- [getmntent](https://manual.cs50.io/3/getmntent) - get filesystem descriptor file entry
- [getmntent\_r](https://manual.cs50.io/3/getmntent_r) - get filesystem descriptor file entry
- [gets](https://manual.cs50.io/3/gets) - get a string from standard input (DEPRECATED)
- [getw](https://manual.cs50.io/3/getw) - input and output of words (ints)
- [getwc](https://manual.cs50.io/3/getwc) - read a wide character from a FILE stream
- [getwc\_unlocked](https://manual.cs50.io/3/getwc_unlocked) - nonlocking stdio functions
- [getwchar\_unlocked](https://manual.cs50.io/3/getwchar_unlocked) - nonlocking stdio functions
- [hasmntopt](https://manual.cs50.io/3/hasmntopt) - get filesystem descriptor file entry
- [open\_memstream](https://manual.cs50.io/3/open_memstream) - open a dynamic memory buffer stream
- [open\_wmemstream](https://manual.cs50.io/3/open_wmemstream) - open a dynamic memory buffer stream
- [pclose](https://manual.cs50.io/3/pclose) - pipe stream to or from a process
- [perror](https://manual.cs50.io/3/perror) - print a system error message
- [popen](https://manual.cs50.io/3/popen) - pipe stream to or from a process
- [printf](https://manual.cs50.io/3/printf) - formatted output conversion print to the screen
- [putc](https://manual.cs50.io/3/putc) - output of characters and strings
- [putc\_unlocked](https://manual.cs50.io/3/putc_unlocked) - nonlocking stdio functions
- [putchar](https://manual.cs50.io/3/putchar) - output of characters and strings
- [putchar\_unlocked](https://manual.cs50.io/3/putchar_unlocked) - nonlocking stdio functions
- [putpwent](https://manual.cs50.io/3/putpwent) - write a password file entry
- [puts](https://manual.cs50.io/3/puts) - output of characters and strings
- [putw](https://manual.cs50.io/3/putw) - input and output of words (ints)
- [putwc](https://manual.cs50.io/3/putwc) - write a wide character to a FILE stream
- [putwc\_unlocked](https://manual.cs50.io/3/putwc_unlocked) - nonlocking stdio functions
- [putwchar\_unlocked](https://manual.cs50.io/3/putwchar_unlocked) - nonlocking stdio functions
- [remove](https://manual.cs50.io/3/remove) - remove a file or directory
- [rename](https://manual.cs50.io/2/rename) - change the name or location of a file
- [renameat](https://manual.cs50.io/2/renameat) - change the name or location of a file
- [renameat2](https://manual.cs50.io/2/renameat2) - change the name or location of a file
- [rewind](https://manual.cs50.io/3/rewind) - reposition a stream
- [scanf](https://manual.cs50.io/3/scanf) - input FILE format conversion get input from a user
- [setbuf](https://manual.cs50.io/3/setbuf) - stream buffering operations
- [setbuffer](https://manual.cs50.io/3/setbuffer) - stream buffering operations
- [setlinebuf](https://manual.cs50.io/3/setlinebuf) - stream buffering operations
- [setmntent](https://manual.cs50.io/3/setmntent) - get filesystem descriptor file entry
- [setvbuf](https://manual.cs50.io/3/setvbuf) - stream buffering operations
- [snprintf](https://manual.cs50.io/3/snprintf) - formatted output conversion
- [sprintf](https://manual.cs50.io/3/sprintf) - formatted output conversion print to a string
- [sscanf](https://manual.cs50.io/3/sscanf) - input string format conversion
- [stderr](https://manual.cs50.io/3/stderr) - standard I/O streams
- [stdin](https://manual.cs50.io/3/stdin) - standard I/O streams
- [stdio](https://manual.cs50.io/3/stdio) - standard input/output library functions
- [stdio\_ext](https://manual.cs50.io/3/stdio_ext) - interfaces to stdio FILE structure
- [stdout](https://manual.cs50.io/3/stdout) - standard I/O streams
- [swprintf](https://manual.cs50.io/3/swprintf) - formatted wide-character output conversion
- [sys\_errlist](https://manual.cs50.io/3/sys_errlist) - print a system error message
- [sys\_nerr](https://manual.cs50.io/3/sys_nerr) - print a system error message
- [tempnam](https://manual.cs50.io/3/tempnam) - create a name for a temporary file
- [tmpfile](https://manual.cs50.io/3/tmpfile) - create a temporary file
- [tmpnam](https://manual.cs50.io/3/tmpnam) - create a name for a temporary file
- [tmpnam\_r](https://manual.cs50.io/3/tmpnam_r) - create a name for a temporary file
- [ungetc](https://manual.cs50.io/3/ungetc) - input of characters and strings
- [unlocked\_stdio](https://manual.cs50.io/3/unlocked_stdio) - nonlocking stdio functions
- [vasprintf](https://manual.cs50.io/3/vasprintf) - print to allocated string
- [vdprintf](https://manual.cs50.io/3/vdprintf) - formatted output conversion
- [vfprintf](https://manual.cs50.io/3/vfprintf) - formatted output conversion
- [vfscanf](https://manual.cs50.io/3/vfscanf) - input FILE format conversion
- [vfwprintf](https://manual.cs50.io/3/vfwprintf) - formatted wide-character output conversion
- [vprintf](https://manual.cs50.io/3/vprintf) - formatted output conversion
- [vscanf](https://manual.cs50.io/3/vscanf) - input FILE format conversion
- [vsnprintf](https://manual.cs50.io/3/vsnprintf) - formatted output conversion
- [vsprintf](https://manual.cs50.io/3/vsprintf) - formatted output conversion
- [vsscanf](https://manual.cs50.io/3/vsscanf) - input string format conversion
- [vswprintf](https://manual.cs50.io/3/vswprintf) - formatted wide-character output conversion
- [vwprintf](https://manual.cs50.io/3/vwprintf) - formatted wide-character output conversion
- [wprintf](https://manual.cs50.io/3/wprintf) - formatted wide-character output conversion
## [stdlib.h](https://manual.cs50.io/#stdlib.h)
- [a64l](https://manual.cs50.io/3/a64l) - convert between long and base-64
- [abort](https://manual.cs50.io/3/abort) - cause abnormal process termination
- [abs](https://manual.cs50.io/3/abs) - compute the absolute value of an integer
- [aligned\_alloc](https://manual.cs50.io/3/aligned_alloc) - allocate aligned memory
- [arc4random](https://manual.cs50.io/3/arc4random) - cryptographically-secure pseudorandom number generator
- [arc4random\_buf](https://manual.cs50.io/3/arc4random_buf) - cryptographically-secure pseudorandom number generator
- [arc4random\_uniform](https://manual.cs50.io/3/arc4random_uniform) - cryptographically-secure pseudorandom number generator
- [atexit](https://manual.cs50.io/3/atexit) - register a function to be called at normal process ter...
- [atof](https://manual.cs50.io/3/atof) - convert a string to a double convert a `string` to a `float`
- [atoi](https://manual.cs50.io/3/atoi) - convert a string to an integer convert a `string` to an `int`
- [atol](https://manual.cs50.io/3/atol) - convert a string to an integer convert a `string` to a `long`
- [atoll](https://manual.cs50.io/3/atoll) - convert a string to an integer
- [atoq](https://manual.cs50.io/3/atoq) - convert a string to an integer
- [bsearch](https://manual.cs50.io/3/bsearch) - binary search of a sorted array
- [calloc](https://manual.cs50.io/3/calloc) - allocate and free dynamic memory
- [canonicalize\_file\_name](https://manual.cs50.io/3/canonicalize_file_name) - return the canonicalized absolute pathname
- [cfree](https://manual.cs50.io/3/cfree) - free allocated memory
- [clearenv](https://manual.cs50.io/3/clearenv) - clear the environment
- [div](https://manual.cs50.io/3/div) - compute quotient and remainder of an integer division
- [drand48](https://manual.cs50.io/3/drand48) - generate uniformly distributed pseudo-random numbers
- [drand48\_r](https://manual.cs50.io/3/drand48_r) - generate uniformly distributed pseudo-random numbers r...
- [ecvt](https://manual.cs50.io/3/ecvt) - convert a floating-point number to a string
- [ecvt\_r](https://manual.cs50.io/3/ecvt_r) - convert a floating-point number to a string
- [erand48](https://manual.cs50.io/3/erand48) - generate uniformly distributed pseudo-random numbers
- [erand48\_r](https://manual.cs50.io/3/erand48_r) - generate uniformly distributed pseudo-random numbers r...
- [exit](https://manual.cs50.io/3/exit) - cause normal process termination
- [fcvt](https://manual.cs50.io/3/fcvt) - convert a floating-point number to a string
- [fcvt\_r](https://manual.cs50.io/3/fcvt_r) - convert a floating-point number to a string
- [free](https://manual.cs50.io/3/free) - allocate and free dynamic memory free dynamically allocated memory
- [gcvt](https://manual.cs50.io/3/gcvt) - convert a floating-point number to a string
- [getenv](https://manual.cs50.io/3/getenv) - get an environment variable
- [getloadavg](https://manual.cs50.io/3/getloadavg) - get system load averages
- [getpt](https://manual.cs50.io/3/getpt) - open a new pseudoterminal master
- [getsubopt](https://manual.cs50.io/3/getsubopt) - parse suboption arguments from a string
- [grantpt](https://manual.cs50.io/3/grantpt) - grant access to the slave pseudoterminal
- [imaxabs](https://manual.cs50.io/3/imaxabs) - compute the absolute value of an integer
- [imaxdiv](https://manual.cs50.io/3/imaxdiv) - compute quotient and remainder of an integer division
- [initstate](https://manual.cs50.io/3/initstate) - random number generator
- [initstate\_r](https://manual.cs50.io/3/initstate_r) - reentrant random number generator
- [jrand48](https://manual.cs50.io/3/jrand48) - generate uniformly distributed pseudo-random numbers
- [jrand48\_r](https://manual.cs50.io/3/jrand48_r) - generate uniformly distributed pseudo-random numbers r...
- [l64a](https://manual.cs50.io/3/l64a) - convert between long and base-64
- [labs](https://manual.cs50.io/3/labs) - compute the absolute value of an integer
- [lcong48](https://manual.cs50.io/3/lcong48) - generate uniformly distributed pseudo-random numbers
- [lcong48\_r](https://manual.cs50.io/3/lcong48_r) - generate uniformly distributed pseudo-random numbers r...
- [ldiv](https://manual.cs50.io/3/ldiv) - compute quotient and remainder of an integer division
- [llabs](https://manual.cs50.io/3/llabs) - compute the absolute value of an integer
- [lldiv](https://manual.cs50.io/3/lldiv) - compute quotient and remainder of an integer division
- [lrand48](https://manual.cs50.io/3/lrand48) - generate uniformly distributed pseudo-random numbers
- [lrand48\_r](https://manual.cs50.io/3/lrand48_r) - generate uniformly distributed pseudo-random numbers r...
- [malloc](https://manual.cs50.io/3/malloc) - allocate and free dynamic memory allocate memory dynamically
- [MB\_CUR\_MAX](https://manual.cs50.io/3/MB_CUR_MAX) - maximum length of a multibyte character in the current...
- [mblen](https://manual.cs50.io/3/mblen) - determine number of bytes in next multibyte character
- [mbstowcs](https://manual.cs50.io/3/mbstowcs) - convert a multibyte string to a wide-character string
- [mbtowc](https://manual.cs50.io/3/mbtowc) - convert a multibyte sequence to a wide character
- [memalign](https://manual.cs50.io/3/memalign) - allocate aligned memory
- [mkdtemp](https://manual.cs50.io/3/mkdtemp) - create a unique temporary directory
- [mkostemp](https://manual.cs50.io/3/mkostemp) - create a unique temporary file
- [mkostemps](https://manual.cs50.io/3/mkostemps) - create a unique temporary file
- [mkstemp](https://manual.cs50.io/3/mkstemp) - create a unique temporary file
- [mkstemps](https://manual.cs50.io/3/mkstemps) - create a unique temporary file
- [mktemp](https://manual.cs50.io/3/mktemp) - make a unique temporary filename
- [mrand48](https://manual.cs50.io/3/mrand48) - generate uniformly distributed pseudo-random numbers
- [mrand48\_r](https://manual.cs50.io/3/mrand48_r) - generate uniformly distributed pseudo-random numbers r...
- [nrand48](https://manual.cs50.io/3/nrand48) - generate uniformly distributed pseudo-random numbers
- [nrand48\_r](https://manual.cs50.io/3/nrand48_r) - generate uniformly distributed pseudo-random numbers r...
- [on\_exit](https://manual.cs50.io/3/on_exit) - register a function to be called at normal process ter...
- [posix\_memalign](https://manual.cs50.io/3/posix_memalign) - allocate aligned memory
- [posix\_openpt](https://manual.cs50.io/3/posix_openpt) - open a pseudoterminal device
- [ptsname](https://manual.cs50.io/3/ptsname) - get the name of the slave pseudoterminal
- [ptsname\_r](https://manual.cs50.io/3/ptsname_r) - get the name of the slave pseudoterminal
- [putenv](https://manual.cs50.io/3/putenv) - change or add an environment variable
- [pvalloc](https://manual.cs50.io/3/pvalloc) - allocate aligned memory
- [qecvt](https://manual.cs50.io/3/qecvt) - convert a floating-point number to a string
- [qecvt\_r](https://manual.cs50.io/3/qecvt_r) - convert a floating-point number to a string
- [qfcvt](https://manual.cs50.io/3/qfcvt) - convert a floating-point number to a string
- [qfcvt\_r](https://manual.cs50.io/3/qfcvt_r) - convert a floating-point number to a string
- [qgcvt](https://manual.cs50.io/3/qgcvt) - convert a floating-point number to a string
- [qsort](https://manual.cs50.io/3/qsort) - sort an array
- [qsort\_r](https://manual.cs50.io/3/qsort_r) - sort an array
- [rand](https://manual.cs50.io/3/rand) - pseudo-random number generator
- [rand\_r](https://manual.cs50.io/3/rand_r) - pseudo-random number generator
- [random](https://manual.cs50.io/3/random) - random number generator generate a pseudorandom number
- [random\_r](https://manual.cs50.io/3/random_r) - reentrant random number generator
- [realloc](https://manual.cs50.io/3/realloc) - allocate and free dynamic memory reallocate memory dynamically
- [reallocarray](https://manual.cs50.io/3/reallocarray) - allocate and free dynamic memory
- [rpmatch](https://manual.cs50.io/3/rpmatch) - determine if the answer to a question is affirmative o...
- [secure\_getenv](https://manual.cs50.io/3/secure_getenv) - get an environment variable
- [seed48](https://manual.cs50.io/3/seed48) - generate uniformly distributed pseudo-random numbers
- [seed48\_r](https://manual.cs50.io/3/seed48_r) - generate uniformly distributed pseudo-random numbers r...
- [setenv](https://manual.cs50.io/3/setenv) - change or add an environment variable
- [setstate](https://manual.cs50.io/3/setstate) - random number generator
- [setstate\_r](https://manual.cs50.io/3/setstate_r) - reentrant random number generator
- [srand](https://manual.cs50.io/3/srand) - pseudo-random number generator
- [srand48](https://manual.cs50.io/3/srand48) - generate uniformly distributed pseudo-random numbers
- [srand48\_r](https://manual.cs50.io/3/srand48_r) - generate uniformly distributed pseudo-random numbers r...
- [srandom](https://manual.cs50.io/3/srandom) - random number generator seed pseudorandom number generation
- [srandom\_r](https://manual.cs50.io/3/srandom_r) - reentrant random number generator
- [strfromd](https://manual.cs50.io/3/strfromd) - convert a floating-point value into a string
- [strfromf](https://manual.cs50.io/3/strfromf) - convert a floating-point value into a string
- [strfroml](https://manual.cs50.io/3/strfroml) - convert a floating-point value into a string
- [strtod](https://manual.cs50.io/3/strtod) - convert ASCII string to floating-point number
- [strtof](https://manual.cs50.io/3/strtof) - convert ASCII string to floating-point number
- [strtol](https://manual.cs50.io/3/strtol) - convert a string to a long integer
- [strtold](https://manual.cs50.io/3/strtold) - convert ASCII string to floating-point number
- [strtoll](https://manual.cs50.io/3/strtoll) - convert a string to a long integer
- [strtoq](https://manual.cs50.io/3/strtoq) - convert a string to a long integer
- [strtoul](https://manual.cs50.io/3/strtoul) - convert a string to an unsigned long integer
- [strtoull](https://manual.cs50.io/3/strtoull) - convert a string to an unsigned long integer
- [strtouq](https://manual.cs50.io/3/strtouq) - convert a string to an unsigned long integer
- [system](https://manual.cs50.io/3/system) - execute a shell command
- [unlockpt](https://manual.cs50.io/3/unlockpt) - unlock a pseudoterminal master/slave pair
- [unsetenv](https://manual.cs50.io/3/unsetenv) - change or add an environment variable
- [valloc](https://manual.cs50.io/3/valloc) - allocate aligned memory
- [wcstombs](https://manual.cs50.io/3/wcstombs) - convert a wide-character string to a multibyte string
- [wctomb](https://manual.cs50.io/3/wctomb) - convert a wide character to a multibyte sequence
## [string.h](https://manual.cs50.io/#string.h)
- [bstring](https://manual.cs50.io/3/bstring) - byte string operations
- [memccpy](https://manual.cs50.io/3/memccpy) - copy memory area
- [memchr](https://manual.cs50.io/3/memchr) - scan memory for a character
- [memcmp](https://manual.cs50.io/3/memcmp) - compare memory areas
- [memcpy](https://manual.cs50.io/3/memcpy) - copy memory area
- [memfrob](https://manual.cs50.io/3/memfrob) - frobnicate (obfuscate) a memory area
- [memmem](https://manual.cs50.io/3/memmem) - locate a substring
- [memmove](https://manual.cs50.io/3/memmove) - copy memory area
- [mempcpy](https://manual.cs50.io/3/mempcpy) - copy memory area
- [memrchr](https://manual.cs50.io/3/memrchr) - scan memory for a character
- [memset](https://manual.cs50.io/3/memset) - fill memory with a constant byte
- [rawmemchr](https://manual.cs50.io/3/rawmemchr) - scan memory for a character
- [sigabbrev\_np](https://manual.cs50.io/3/sigabbrev_np) - return string describing signal
- [sigdescr\_np](https://manual.cs50.io/3/sigdescr_np) - return string describing signal
- [stpcpy](https://manual.cs50.io/3/stpcpy) - copy or catenate a string
- [stpncpy](https://manual.cs50.io/3/stpncpy) - fill a fixed-size buffer with non-null bytes from a st...
- [strcasestr](https://manual.cs50.io/3/strcasestr) - locate a substring locate a substring
- [strcat](https://manual.cs50.io/3/strcat) - copy or catenate a string
- [strchr](https://manual.cs50.io/3/strchr) - locate character in string
- [strchrnul](https://manual.cs50.io/3/strchrnul) - locate character in string
- [strcmp](https://manual.cs50.io/3/strcmp) - compare two strings compare two strings
- [strcoll](https://manual.cs50.io/3/strcoll) - compare two strings using the current locale
- [strcpy](https://manual.cs50.io/3/strcpy) - copy or catenate a string copy a string
- [strcspn](https://manual.cs50.io/3/strcspn) - get length of a prefix substring
- [strdup](https://manual.cs50.io/3/strdup) - duplicate a string
- [strdupa](https://manual.cs50.io/3/strdupa) - duplicate a string
- [strerror](https://manual.cs50.io/3/strerror) - return string describing error number
- [strerror\_l](https://manual.cs50.io/3/strerror_l) - return string describing error number
- [strerror\_r](https://manual.cs50.io/3/strerror_r) - return string describing error number
- [strerrordesc\_np](https://manual.cs50.io/3/strerrordesc_np) - return string describing error number
- [strerrorname\_np](https://manual.cs50.io/3/strerrorname_np) - return string describing error number
- [strfry](https://manual.cs50.io/3/strfry) - randomize a string
- [strlen](https://manual.cs50.io/3/strlen) - calculate the length of a string calculate the length of a string
- [strncat](https://manual.cs50.io/3/strncat) - append non-null bytes from a source array to a string,...
- [strncmp](https://manual.cs50.io/3/strncmp) - compare two strings
- [strncpy](https://manual.cs50.io/3/strncpy) - fill a fixed-size buffer with non-null bytes from a st...
- [strndup](https://manual.cs50.io/3/strndup) - duplicate a string
- [strndupa](https://manual.cs50.io/3/strndupa) - duplicate a string
- [strnlen](https://manual.cs50.io/3/strnlen) - determine the length of a fixed-size string
- [strpbrk](https://manual.cs50.io/3/strpbrk) - search a string for any of a set of bytes
- [strrchr](https://manual.cs50.io/3/strrchr) - locate character in string
- [strsep](https://manual.cs50.io/3/strsep) - extract token from string
- [strsignal](https://manual.cs50.io/3/strsignal) - return string describing signal
- [strspn](https://manual.cs50.io/3/strspn) - get length of a prefix substring
- [strstr](https://manual.cs50.io/3/strstr) - locate a substring locate a substring
- [strtok](https://manual.cs50.io/3/strtok) - extract tokens from strings
- [strtok\_r](https://manual.cs50.io/3/strtok_r) - extract tokens from strings
- [strverscmp](https://manual.cs50.io/3/strverscmp) - compare two version strings
- [strxfrm](https://manual.cs50.io/3/strxfrm) - string transformation
- [sys\_siglist](https://manual.cs50.io/3/sys_siglist) - return string describing signal
- [wmempcpy](https://manual.cs50.io/3/wmempcpy) - copy memory area
## [strings.h](https://manual.cs50.io/#strings.h)
- [bcmp](https://manual.cs50.io/3/bcmp) - compare byte sequences
- [bcopy](https://manual.cs50.io/3/bcopy) - copy byte sequence
- [bzero](https://manual.cs50.io/3/bzero) - zero a byte string
- [explicit\_bzero](https://manual.cs50.io/3/explicit_bzero) - zero a byte string
- [ffs](https://manual.cs50.io/3/ffs) - find first bit set in a word
- [ffsl](https://manual.cs50.io/3/ffsl) - find first bit set in a word
- [ffsll](https://manual.cs50.io/3/ffsll) - find first bit set in a word
- [index](https://manual.cs50.io/3/index) - locate character in string
- [rindex](https://manual.cs50.io/3/rindex) - locate character in string
- [strcasecmp](https://manual.cs50.io/3/strcasecmp) - compare two strings ignoring case compare two strings ignoring case
- [string](https://manual.cs50.io/3/string) - string operations
- [strncasecmp](https://manual.cs50.io/3/strncasecmp) - compare two strings ignoring case
## [sys/ipc.h](https://manual.cs50.io/#sys/ipc.h)
- [ftok](https://manual.cs50.io/3/ftok) - convert a pathname and a project identifier to a Syste...
## [sys/mman.h](https://manual.cs50.io/#sys/mman.h)
- [madvise](https://manual.cs50.io/2/madvise) - give advice about use of memory
- [memfd\_create](https://manual.cs50.io/2/memfd_create) - create an anonymous file
- [mincore](https://manual.cs50.io/2/mincore) - determine whether pages are resident in memory
- [mlock](https://manual.cs50.io/2/mlock) - lock and unlock memory
- [mlock2](https://manual.cs50.io/2/mlock2) - lock and unlock memory
- [mlockall](https://manual.cs50.io/2/mlockall) - lock and unlock memory
- [mmap](https://manual.cs50.io/2/mmap) - map or unmap files or devices into memory
- [mmap64](https://manual.cs50.io/3/mmap64) - map or unmap files or devices into memory
- [mprotect](https://manual.cs50.io/2/mprotect) - set protection on a region of memory
- [mremap](https://manual.cs50.io/2/mremap) - remap a virtual memory address
- [msync](https://manual.cs50.io/2/msync) - synchronize a file with a memory map
- [munlock](https://manual.cs50.io/2/munlock) - lock and unlock memory
- [munlockall](https://manual.cs50.io/2/munlockall) - lock and unlock memory
- [munmap](https://manual.cs50.io/2/munmap) - map or unmap files or devices into memory
- [pkey\_alloc](https://manual.cs50.io/2/pkey_alloc) - allocate or free a protection key
- [pkey\_free](https://manual.cs50.io/2/pkey_free) - allocate or free a protection key
- [pkey\_mprotect](https://manual.cs50.io/2/pkey_mprotect) - set protection on a region of memory
- [posix\_madvise](https://manual.cs50.io/3/posix_madvise) - give advice about patterns of memory usage
- [process\_madvise](https://manual.cs50.io/2/process_madvise) - give advice about use of memory to a process
- [remap\_file\_pages](https://manual.cs50.io/2/remap_file_pages) - create a nonlinear file mapping
- [shm\_open](https://manual.cs50.io/3/shm_open) - create/open or unlink POSIX shared memory objects
- [shm\_unlink](https://manual.cs50.io/3/shm_unlink) - create/open or unlink POSIX shared memory objects
## [sys/msg.h](https://manual.cs50.io/#sys/msg.h)
- [msgctl](https://manual.cs50.io/2/msgctl) - System V message control operations
- [msgget](https://manual.cs50.io/2/msgget) - get a System V message queue identifier
- [msgop](https://manual.cs50.io/2/msgop) - System V message queue operations
- [msgrcv](https://manual.cs50.io/2/msgrcv) - System V message queue operations
- [msgsnd](https://manual.cs50.io/2/msgsnd) - System V message queue operations
## [sys/resource.h](https://manual.cs50.io/#sys/resource.h)
- [getpriority](https://manual.cs50.io/2/getpriority) - get/set program scheduling priority
- [getrlimit](https://manual.cs50.io/2/getrlimit) - get/set resource limits
- [getrusage](https://manual.cs50.io/2/getrusage) - get resource usage
- [prlimit](https://manual.cs50.io/2/prlimit) - get/set resource limits
- [prlimit64](https://manual.cs50.io/2/prlimit64) - get/set resource limits
- [setpriority](https://manual.cs50.io/2/setpriority) - get/set program scheduling priority
- [setrlimit](https://manual.cs50.io/2/setrlimit) - get/set resource limits
- [ugetrlimit](https://manual.cs50.io/2/ugetrlimit) - get/set resource limits
- [vlimit](https://manual.cs50.io/3/vlimit) - get/set resource limits
- [vtimes](https://manual.cs50.io/3/vtimes) - get resource usage
## [sys/select.h](https://manual.cs50.io/#sys/select.h)
- [\_newselect](https://manual.cs50.io/2/_newselect) - synchronous I/O multiplexing
- [FD\_CLR](https://manual.cs50.io/3/FD_CLR) - synchronous I/O multiplexing
- [FD\_ISSET](https://manual.cs50.io/3/FD_ISSET) - synchronous I/O multiplexing
- [FD\_SET](https://manual.cs50.io/3/FD_SET) - synchronous I/O multiplexing
- [FD\_ZERO](https://manual.cs50.io/3/FD_ZERO) - synchronous I/O multiplexing
- [pselect](https://manual.cs50.io/2/pselect) - synchronous I/O multiplexing
- [pselect6](https://manual.cs50.io/2/pselect6) - synchronous I/O multiplexing
- [select](https://manual.cs50.io/2/select) - synchronous I/O multiplexing
## [sys/sem.h](https://manual.cs50.io/#sys/sem.h)
- [semctl](https://manual.cs50.io/2/semctl) - System V semaphore control operations
- [semget](https://manual.cs50.io/2/semget) - get a System V semaphore set identifier
- [semop](https://manual.cs50.io/2/semop) - System V semaphore operations
- [semtimedop](https://manual.cs50.io/2/semtimedop) - System V semaphore operations
## [sys/shm.h](https://manual.cs50.io/#sys/shm.h)
- [shmat](https://manual.cs50.io/2/shmat) - System V shared memory operations
- [shmctl](https://manual.cs50.io/2/shmctl) - System V shared memory control
- [shmdt](https://manual.cs50.io/2/shmdt) - System V shared memory operations
- [shmget](https://manual.cs50.io/2/shmget) - allocates a System V shared memory segment
- [shmop](https://manual.cs50.io/2/shmop) - System V shared memory operations
## [sys/socket.h](https://manual.cs50.io/#sys/socket.h)
- [accept](https://manual.cs50.io/2/accept) - accept a connection on a socket
- [accept4](https://manual.cs50.io/2/accept4) - accept a connection on a socket
- [address\_families](https://manual.cs50.io/7/address_families) - socket address families (domains)
- [bind](https://manual.cs50.io/2/bind) - bind a name to a socket
- [cmsg](https://manual.cs50.io/3/cmsg) - access ancillary data
- [CMSG\_ALIGN](https://manual.cs50.io/3/CMSG_ALIGN) - access ancillary data
- [CMSG\_DATA](https://manual.cs50.io/3/CMSG_DATA) - access ancillary data
- [CMSG\_FIRSTHDR](https://manual.cs50.io/3/CMSG_FIRSTHDR) - access ancillary data
- [CMSG\_LEN](https://manual.cs50.io/3/CMSG_LEN) - access ancillary data
- [CMSG\_NXTHDR](https://manual.cs50.io/3/CMSG_NXTHDR) - access ancillary data
- [CMSG\_SPACE](https://manual.cs50.io/3/CMSG_SPACE) - access ancillary data
- [connect](https://manual.cs50.io/2/connect) - initiate a connection on a socket
- [ddp](https://manual.cs50.io/7/ddp) - Linux AppleTalk protocol implementation
- [getnameinfo](https://manual.cs50.io/3/getnameinfo) - address-to-name translation in protocol-independent ma...
- [getpeername](https://manual.cs50.io/2/getpeername) - get name of connected peer socket
- [getsockname](https://manual.cs50.io/2/getsockname) - get socket name
- [getsockopt](https://manual.cs50.io/2/getsockopt) - get and set options on sockets
- [inet](https://manual.cs50.io/3/inet) - Internet address manipulation routines
- [inet\_addr](https://manual.cs50.io/3/inet_addr) - Internet address manipulation routines
- [inet\_aton](https://manual.cs50.io/3/inet_aton) - Internet address manipulation routines
- [inet\_lnaof](https://manual.cs50.io/3/inet_lnaof) - Internet address manipulation routines
- [inet\_makeaddr](https://manual.cs50.io/3/inet_makeaddr) - Internet address manipulation routines
- [inet\_netof](https://manual.cs50.io/3/inet_netof) - Internet address manipulation routines
- [inet\_network](https://manual.cs50.io/3/inet_network) - Internet address manipulation routines
- [inet\_ntoa](https://manual.cs50.io/3/inet_ntoa) - Internet address manipulation routines
- [ip](https://manual.cs50.io/7/ip) - Linux IPv4 protocol implementation
- [ipv6](https://manual.cs50.io/7/ipv6) - Linux IPv6 protocol implementation
- [listen](https://manual.cs50.io/2/listen) - listen for connections on a socket
- [packet](https://manual.cs50.io/7/packet) - packet interface on device level
- [raw](https://manual.cs50.io/7/raw) - Linux IPv4 raw sockets
- [recv](https://manual.cs50.io/2/recv) - receive a message from a socket
- [recvfrom](https://manual.cs50.io/2/recvfrom) - receive a message from a socket
- [recvmmsg](https://manual.cs50.io/2/recvmmsg) - receive multiple messages on a socket
- [recvmsg](https://manual.cs50.io/2/recvmsg) - receive a message from a socket
- [send](https://manual.cs50.io/2/send) - send a message on a socket
- [sendmmsg](https://manual.cs50.io/2/sendmmsg) - send multiple messages on a socket
- [sendmsg](https://manual.cs50.io/2/sendmsg) - send a message on a socket
- [sendto](https://manual.cs50.io/2/sendto) - send a message on a socket
- [setsockopt](https://manual.cs50.io/2/setsockopt) - get and set options on sockets
- [shutdown](https://manual.cs50.io/2/shutdown) - shut down part of a full-duplex connection
- [sock\_diag](https://manual.cs50.io/7/sock_diag) - obtaining information about sockets
- [sockatmark](https://manual.cs50.io/3/sockatmark) - determine whether socket is at out-of-band mark
- [socket](https://manual.cs50.io/2/socket) - create an endpoint for communication
- [socket](https://manual.cs50.io/7/socket) - Linux socket interface
- [socketpair](https://manual.cs50.io/2/socketpair) - create a pair of connected sockets
- [tcp](https://manual.cs50.io/7/tcp) - TCP protocol
- [udp](https://manual.cs50.io/7/udp) - User Datagram Protocol for IPv4
- [udplite](https://manual.cs50.io/7/udplite) - Lightweight User Datagram Protocol
- [unix](https://manual.cs50.io/7/unix) - sockets for local interprocess communication
- [vsock](https://manual.cs50.io/7/vsock) - Linux VSOCK address family
- [x25](https://manual.cs50.io/7/x25) - ITU-T X.25 / ISO/IEC 8208 protocol interface
## [sys/stat.h](https://manual.cs50.io/#sys/stat.h)
- [chmod](https://manual.cs50.io/2/chmod) - change permissions of a file
- [fchmod](https://manual.cs50.io/2/fchmod) - change permissions of a file
- [fchmodat](https://manual.cs50.io/2/fchmodat) - change permissions of a file
- [fstat](https://manual.cs50.io/2/fstat) - get file status
- [fstat64](https://manual.cs50.io/2/fstat64) - get file status
- [fstatat](https://manual.cs50.io/2/fstatat) - get file status
- [fstatat64](https://manual.cs50.io/2/fstatat64) - get file status
- [futimens](https://manual.cs50.io/3/futimens) - change file timestamps with nanosecond precision
- [isfdtype](https://manual.cs50.io/3/isfdtype) - test file type of a file descriptor
- [lstat](https://manual.cs50.io/2/lstat) - get file status
- [lstat64](https://manual.cs50.io/2/lstat64) - get file status
- [mkdir](https://manual.cs50.io/2/mkdir) - create a directory
- [mkdirat](https://manual.cs50.io/2/mkdirat) - create a directory
- [mknod](https://manual.cs50.io/2/mknod) - create a special or ordinary file
- [mknodat](https://manual.cs50.io/2/mknodat) - create a special or ordinary file
- [newfstatat](https://manual.cs50.io/2/newfstatat) - get file status
- [oldfstat](https://manual.cs50.io/2/oldfstat) - get file status
- [oldlstat](https://manual.cs50.io/2/oldlstat) - get file status
- [oldstat](https://manual.cs50.io/2/oldstat) - get file status
- [stat](https://manual.cs50.io/2/stat) - get file status
- [stat64](https://manual.cs50.io/2/stat64) - get file status
- [statx](https://manual.cs50.io/2/statx) - get file status (extended)
- [umask](https://manual.cs50.io/2/umask) - set file mode creation mask
- [utimensat](https://manual.cs50.io/2/utimensat) - change file timestamps with nanosecond precision
## [sys/statvfs.h](https://manual.cs50.io/#sys/statvfs.h)
- [fstatvfs](https://manual.cs50.io/3/fstatvfs) - get filesystem statistics
- [statvfs](https://manual.cs50.io/3/statvfs) - get filesystem statistics
## [sys/time.h](https://manual.cs50.io/#sys/time.h)
- [adjtime](https://manual.cs50.io/3/adjtime) - correct the time to synchronize the system clock
- [futimes](https://manual.cs50.io/3/futimes) - change file timestamps
- [futimesat](https://manual.cs50.io/2/futimesat) - change timestamps of a file relative to a directory fi...
- [getitimer](https://manual.cs50.io/2/getitimer) - get or set value of an interval timer
- [gettimeofday](https://manual.cs50.io/2/gettimeofday) - get / set time
- [lutimes](https://manual.cs50.io/3/lutimes) - change file timestamps
- [setitimer](https://manual.cs50.io/2/setitimer) - get or set value of an interval timer
- [settimeofday](https://manual.cs50.io/2/settimeofday) - get / set time
- [timeradd](https://manual.cs50.io/3/timeradd) - timeval operations
- [timerclear](https://manual.cs50.io/3/timerclear) - timeval operations
- [timercmp](https://manual.cs50.io/3/timercmp) - timeval operations
- [timerisset](https://manual.cs50.io/3/timerisset) - timeval operations
- [timersub](https://manual.cs50.io/3/timersub) - timeval operations
- [TIMESPEC\_TO\_TIMEVAL](https://manual.cs50.io/3/TIMESPEC_TO_TIMEVAL) - convert between time structures
- [TIMEVAL\_TO\_TIMESPEC](https://manual.cs50.io/3/TIMEVAL_TO_TIMESPEC) - convert between time structures
## [sys/times.h](https://manual.cs50.io/#sys/times.h)
- [times](https://manual.cs50.io/2/times) - get process times
## [sys/types.h](https://manual.cs50.io/#sys/types.h)
- [bindresvport](https://manual.cs50.io/3/bindresvport) - bind a socket to a privileged IP port
- [closedir](https://manual.cs50.io/3/closedir) - close a directory
- [db](https://manual.cs50.io/3/db) - database access methods
- [dbopen](https://manual.cs50.io/3/dbopen) - database access methods
- [dirfd](https://manual.cs50.io/3/dirfd) - get directory stream file descriptor
- [endgrent](https://manual.cs50.io/3/endgrent) - get group file entry
- [endpwent](https://manual.cs50.io/3/endpwent) - get password file entry
- [fdopendir](https://manual.cs50.io/3/fdopendir) - open a directory
- [freeaddrinfo](https://manual.cs50.io/3/freeaddrinfo) - network address and service translation
- [freehostent](https://manual.cs50.io/3/freehostent) - get network hostnames and addresses
- [freeifaddrs](https://manual.cs50.io/3/freeifaddrs) - get interface addresses
- [fts](https://manual.cs50.io/3/fts) - traverse a file hierarchy
- [fts\_children](https://manual.cs50.io/3/fts_children) - traverse a file hierarchy
- [fts\_close](https://manual.cs50.io/3/fts_close) - traverse a file hierarchy
- [fts\_open](https://manual.cs50.io/3/fts_open) - traverse a file hierarchy
- [fts\_read](https://manual.cs50.io/3/fts_read) - traverse a file hierarchy
- [fts\_set](https://manual.cs50.io/3/fts_set) - traverse a file hierarchy
- [gai\_strerror](https://manual.cs50.io/3/gai_strerror) - network address and service translation
- [getaddrinfo](https://manual.cs50.io/3/getaddrinfo) - network address and service translation
- [getgrent](https://manual.cs50.io/3/getgrent) - get group file entry
- [getgrgid](https://manual.cs50.io/3/getgrgid) - get group file entry
- [getgrgid\_r](https://manual.cs50.io/3/getgrgid_r) - get group file entry
- [getgrnam](https://manual.cs50.io/3/getgrnam) - get group file entry
- [getgrnam\_r](https://manual.cs50.io/3/getgrnam_r) - get group file entry
- [getifaddrs](https://manual.cs50.io/3/getifaddrs) - get interface addresses
- [getipnodebyaddr](https://manual.cs50.io/3/getipnodebyaddr) - get network hostnames and addresses
- [getipnodebyname](https://manual.cs50.io/3/getipnodebyname) - get network hostnames and addresses
- [getpw](https://manual.cs50.io/3/getpw) - reconstruct password line entry
- [getpwent](https://manual.cs50.io/3/getpwent) - get password file entry
- [getpwnam](https://manual.cs50.io/3/getpwnam) - get password file entry
- [getpwnam\_r](https://manual.cs50.io/3/getpwnam_r) - get password file entry
- [getpwuid](https://manual.cs50.io/3/getpwuid) - get password file entry
- [getpwuid\_r](https://manual.cs50.io/3/getpwuid_r) - get password file entry
- [initgroups](https://manual.cs50.io/3/initgroups) - initialize the supplementary group access list
- [lseek64](https://manual.cs50.io/3/lseek64) - reposition 64-bit read/write file offset
- [mkfifo](https://manual.cs50.io/3/mkfifo) - make a FIFO special file (a named pipe)
- [mkfifoat](https://manual.cs50.io/3/mkfifoat) - make a FIFO special file (a named pipe)
- [opendir](https://manual.cs50.io/3/opendir) - open a directory
- [re\_comp](https://manual.cs50.io/3/re_comp) - BSD regex functions
- [re\_exec](https://manual.cs50.io/3/re_exec) - BSD regex functions
- [rewinddir](https://manual.cs50.io/3/rewinddir) - reset directory stream
- [setgrent](https://manual.cs50.io/3/setgrent) - get group file entry
- [setpwent](https://manual.cs50.io/3/setpwent) - get password file entry
- [ustat](https://manual.cs50.io/2/ustat) - get filesystem statistics
## [sys/uio.h](https://manual.cs50.io/#sys/uio.h)
- [preadv](https://manual.cs50.io/2/preadv) - read or write data into multiple buffers
- [preadv2](https://manual.cs50.io/2/preadv2) - read or write data into multiple buffers
- [process\_vm\_readv](https://manual.cs50.io/2/process_vm_readv) - transfer data between process address spaces
- [process\_vm\_writev](https://manual.cs50.io/2/process_vm_writev) - transfer data between process address spaces
- [pwritev](https://manual.cs50.io/2/pwritev) - read or write data into multiple buffers
- [pwritev2](https://manual.cs50.io/2/pwritev2) - read or write data into multiple buffers
- [readv](https://manual.cs50.io/2/readv) - read or write data into multiple buffers
- [writev](https://manual.cs50.io/2/writev) - read or write data into multiple buffers
## [sys/utsname.h](https://manual.cs50.io/#sys/utsname.h)
- [oldolduname](https://manual.cs50.io/2/oldolduname) - get name and information about current kernel
- [olduname](https://manual.cs50.io/2/olduname) - get name and information about current kernel
- [uname](https://manual.cs50.io/2/uname) - get name and information about current kernel
## [sys/wait.h](https://manual.cs50.io/#sys/wait.h)
- [wait](https://manual.cs50.io/2/wait) - wait for process to change state
- [wait3](https://manual.cs50.io/2/wait3) - wait for process to change state, BSD style
- [wait4](https://manual.cs50.io/2/wait4) - wait for process to change state, BSD style
- [waitid](https://manual.cs50.io/2/waitid) - wait for process to change state
- [waitpid](https://manual.cs50.io/2/waitpid) - wait for process to change state
## [syslog.h](https://manual.cs50.io/#syslog.h)
- [closelog](https://manual.cs50.io/3/closelog) - send messages to the system logger
- [openlog](https://manual.cs50.io/3/openlog) - send messages to the system logger
- [setlogmask](https://manual.cs50.io/3/setlogmask) - set log priority mask
- [syslog](https://manual.cs50.io/3/syslog) - send messages to the system logger
- [vsyslog](https://manual.cs50.io/3/vsyslog) - send messages to the system logger
## [termios.h](https://manual.cs50.io/#termios.h)
- [cfgetispeed](https://manual.cs50.io/3/cfgetispeed) - get and set terminal attributes, line control, get and...
- [cfgetospeed](https://manual.cs50.io/3/cfgetospeed) - get and set terminal attributes, line control, get and...
- [cfmakeraw](https://manual.cs50.io/3/cfmakeraw) - get and set terminal attributes, line control, get and...
- [cfsetispeed](https://manual.cs50.io/3/cfsetispeed) - get and set terminal attributes, line control, get and...
- [cfsetospeed](https://manual.cs50.io/3/cfsetospeed) - get and set terminal attributes, line control, get and...
- [cfsetspeed](https://manual.cs50.io/3/cfsetspeed) - get and set terminal attributes, line control, get and...
- [tcdrain](https://manual.cs50.io/3/tcdrain) - get and set terminal attributes, line control, get and...
- [tcflow](https://manual.cs50.io/3/tcflow) - get and set terminal attributes, line control, get and...
- [tcflush](https://manual.cs50.io/3/tcflush) - get and set terminal attributes, line control, get and...
- [tcgetattr](https://manual.cs50.io/3/tcgetattr) - get and set terminal attributes, line control, get and...
- [tcgetsid](https://manual.cs50.io/3/tcgetsid) - get session ID
- [tcsendbreak](https://manual.cs50.io/3/tcsendbreak) - get and set terminal attributes, line control, get and...
- [tcsetattr](https://manual.cs50.io/3/tcsetattr) - get and set terminal attributes, line control, get and...
- [termios](https://manual.cs50.io/3/termios) - get and set terminal attributes, line control, get and...
## [time.h](https://manual.cs50.io/#time.h)
- [asctime](https://manual.cs50.io/3/asctime) - transform date and time to broken-down time or ASCII
- [asctime\_r](https://manual.cs50.io/3/asctime_r) - transform date and time to broken-down time or ASCII
- [clock](https://manual.cs50.io/3/clock) - determine processor time
- [clock\_getcpuclockid](https://manual.cs50.io/3/clock_getcpuclockid) - obtain ID of a process CPU-time clock
- [clock\_getres](https://manual.cs50.io/2/clock_getres) - clock and time functions
- [clock\_gettime](https://manual.cs50.io/2/clock_gettime) - clock and time functions
- [clock\_nanosleep](https://manual.cs50.io/2/clock_nanosleep) - high-resolution sleep with specifiable clock
- [clock\_settime](https://manual.cs50.io/2/clock_settime) - clock and time functions
- [ctime](https://manual.cs50.io/3/ctime) - transform date and time to broken-down time or ASCII
- [ctime\_r](https://manual.cs50.io/3/ctime_r) - transform date and time to broken-down time or ASCII
- [daylight](https://manual.cs50.io/3/daylight) - initialize time conversion information
- [difftime](https://manual.cs50.io/3/difftime) - calculate time difference
- [dysize](https://manual.cs50.io/3/dysize) - get number of days for a given year
- [getdate](https://manual.cs50.io/3/getdate) - convert a date-plus-time string to broken-down time
- [getdate\_err](https://manual.cs50.io/3/getdate_err) - convert a date-plus-time string to broken-down time
- [getdate\_r](https://manual.cs50.io/3/getdate_r) - convert a date-plus-time string to broken-down time
- [gmtime](https://manual.cs50.io/3/gmtime) - transform date and time to broken-down time or ASCII
- [gmtime\_r](https://manual.cs50.io/3/gmtime_r) - transform date and time to broken-down time or ASCII
- [localtime](https://manual.cs50.io/3/localtime) - transform date and time to broken-down time or ASCII
- [localtime\_r](https://manual.cs50.io/3/localtime_r) - transform date and time to broken-down time or ASCII
- [mktime](https://manual.cs50.io/3/mktime) - transform date and time to broken-down time or ASCII
- [nanosleep](https://manual.cs50.io/2/nanosleep) - high-resolution sleep
- [stime](https://manual.cs50.io/2/stime) - set time
- [strftime](https://manual.cs50.io/3/strftime) - format date and time
- [strftime\_l](https://manual.cs50.io/3/strftime_l) - format date and time
- [strptime](https://manual.cs50.io/3/strptime) - convert a string representation of time to a time tm s...
- [time](https://manual.cs50.io/2/time) - get time in seconds get time in seconds
- [timegm](https://manual.cs50.io/3/timegm) - inverses of gmtime and localtime
- [timelocal](https://manual.cs50.io/3/timelocal) - inverses of gmtime and localtime
- [timer\_create](https://manual.cs50.io/2/timer_create) - create a POSIX per-process timer
- [timer\_delete](https://manual.cs50.io/2/timer_delete) - delete a POSIX per-process timer
- [timer\_getoverrun](https://manual.cs50.io/2/timer_getoverrun) - get overrun count for a POSIX per-process timer
- [timer\_gettime](https://manual.cs50.io/2/timer_gettime) - arm/disarm and fetch state of POSIX per-process timer
- [timer\_settime](https://manual.cs50.io/2/timer_settime) - arm/disarm and fetch state of POSIX per-process timer
- [timezone](https://manual.cs50.io/3/timezone) - initialize time conversion information
- [tzname](https://manual.cs50.io/3/tzname) - initialize time conversion information
- [tzset](https://manual.cs50.io/3/tzset) - initialize time conversion information
## [ulimit.h](https://manual.cs50.io/#ulimit.h)
- [ulimit](https://manual.cs50.io/3/ulimit) - get and set user limits
## [unistd.h](https://manual.cs50.io/#unistd.h)
- [\_Exit](https://manual.cs50.io/2/_Exit) - terminate the calling process
- [\_exit](https://manual.cs50.io/2/_exit) - terminate the calling process
- [\_llseek](https://manual.cs50.io/2/_llseek) - reposition read/write file offset
- [\_sysctl](https://manual.cs50.io/2/_sysctl) - read/write system parameters
- [access](https://manual.cs50.io/2/access) - check user's permissions for a file
- [acct](https://manual.cs50.io/2/acct) - switch process accounting on or off
- [alarm](https://manual.cs50.io/2/alarm) - set an alarm clock for delivery of a signal
- [arch\_prctl](https://manual.cs50.io/2/arch_prctl) - set architecture-specific thread state
- [brk](https://manual.cs50.io/2/brk) - change data segment size
- [capget](https://manual.cs50.io/2/capget) - set/get capabilities of thread(s)
- [capset](https://manual.cs50.io/2/capset) - set/get capabilities of thread(s)
- [chdir](https://manual.cs50.io/2/chdir) - change working directory
- [chown](https://manual.cs50.io/2/chown) - change ownership of a file
- [chown32](https://manual.cs50.io/2/chown32) - change ownership of a file
- [chroot](https://manual.cs50.io/2/chroot) - change root directory
- [close](https://manual.cs50.io/2/close) - close a file descriptor
- [close\_range](https://manual.cs50.io/2/close_range) - close all file descriptors in a given range
- [confstr](https://manual.cs50.io/3/confstr) - get configuration dependent string variables
- [copy\_file\_range](https://manual.cs50.io/2/copy_file_range) - Copy a range of data from one file to another
- [cuserid](https://manual.cs50.io/3/cuserid) - get username
- [daemon](https://manual.cs50.io/3/daemon) - run in the background
- [delete\_module](https://manual.cs50.io/2/delete_module) - unload a kernel module
- [dup](https://manual.cs50.io/2/dup) - duplicate a file descriptor
- [dup2](https://manual.cs50.io/2/dup2) - duplicate a file descriptor
- [dup3](https://manual.cs50.io/2/dup3) - duplicate a file descriptor
- [eaccess](https://manual.cs50.io/3/eaccess) - check effective user's permissions for a file
- [encrypt](https://manual.cs50.io/3/encrypt) - encrypt 64-bit messages
- [encrypt\_r](https://manual.cs50.io/3/encrypt_r) - encrypt 64-bit messages
- [endusershell](https://manual.cs50.io/3/endusershell) - get permitted user shells
- [euidaccess](https://manual.cs50.io/3/euidaccess) - check effective user's permissions for a file
- [exec](https://manual.cs50.io/3/exec) - execute a file
- [execl](https://manual.cs50.io/3/execl) - execute a file
- [execle](https://manual.cs50.io/3/execle) - execute a file
- [execlp](https://manual.cs50.io/3/execlp) - execute a file
- [execv](https://manual.cs50.io/3/execv) - execute a file
- [execve](https://manual.cs50.io/2/execve) - execute program
- [execveat](https://manual.cs50.io/2/execveat) - execute program relative to a directory file descriptor
- [execvp](https://manual.cs50.io/3/execvp) - execute a file
- [execvpe](https://manual.cs50.io/3/execvpe) - execute a file
- [exit](https://manual.cs50.io/2/exit) - terminate the calling process
- [exit\_group](https://manual.cs50.io/2/exit_group) - exit all threads in a process
- [faccessat](https://manual.cs50.io/2/faccessat) - check user's permissions for a file
- [faccessat2](https://manual.cs50.io/2/faccessat2) - check user's permissions for a file
- [fchdir](https://manual.cs50.io/2/fchdir) - change working directory
- [fchown](https://manual.cs50.io/2/fchown) - change ownership of a file
- [fchown32](https://manual.cs50.io/2/fchown32) - change ownership of a file
- [fchownat](https://manual.cs50.io/2/fchownat) - change ownership of a file
- [fdatasync](https://manual.cs50.io/2/fdatasync) - synchronize a file's in-core state with storage device
- [fexecve](https://manual.cs50.io/3/fexecve) - execute program specified via file descriptor
- [finit\_module](https://manual.cs50.io/2/finit_module) - load a kernel module
- [fork](https://manual.cs50.io/2/fork) - create a child process
- [fpathconf](https://manual.cs50.io/3/fpathconf) - get configuration values for files
- [fsync](https://manual.cs50.io/2/fsync) - synchronize a file's in-core state with storage device
- [ftruncate](https://manual.cs50.io/2/ftruncate) - truncate a file to a specified length
- [ftruncate64](https://manual.cs50.io/2/ftruncate64) - truncate a file to a specified length
- [futex](https://manual.cs50.io/2/futex) - fast user-space locking
- [get\_current\_dir\_name](https://manual.cs50.io/3/get_current_dir_name) - get current working directory
- [get\_robust\_list](https://manual.cs50.io/2/get_robust_list) - get/set list of robust futexes
- [get\_thread\_area](https://manual.cs50.io/2/get_thread_area) - manipulate thread-local storage information
- [getcwd](https://manual.cs50.io/2/getcwd) - get current working directory
- [getcwd](https://manual.cs50.io/3/getcwd) - get current working directory
- [getdents](https://manual.cs50.io/2/getdents) - get directory entries
- [getdents64](https://manual.cs50.io/2/getdents64) - get directory entries
- [getdomainname](https://manual.cs50.io/2/getdomainname) - get/set NIS domain name
- [getdtablesize](https://manual.cs50.io/3/getdtablesize) - get file descriptor table size
- [getegid](https://manual.cs50.io/2/getegid) - get group identity
- [getegid32](https://manual.cs50.io/2/getegid32) - get group identity
- [getentropy](https://manual.cs50.io/3/getentropy) - fill a buffer with random bytes
- [geteuid](https://manual.cs50.io/2/geteuid) - get user identity
- [geteuid32](https://manual.cs50.io/2/geteuid32) - get user identity
- [getgid](https://manual.cs50.io/2/getgid) - get group identity
- [getgid32](https://manual.cs50.io/2/getgid32) - get group identity
- [getgroups](https://manual.cs50.io/2/getgroups) - get/set list of supplementary group IDs
- [getgroups32](https://manual.cs50.io/2/getgroups32) - get/set list of supplementary group IDs
- [gethostid](https://manual.cs50.io/3/gethostid) - get or set the unique identifier of the current host
- [gethostname](https://manual.cs50.io/2/gethostname) - get/set hostname
- [getlogin](https://manual.cs50.io/3/getlogin) - get username
- [getlogin\_r](https://manual.cs50.io/3/getlogin_r) - get username
- [getopt](https://manual.cs50.io/3/getopt) - Parse command-line options
- [getopt\_long](https://manual.cs50.io/3/getopt_long) - Parse command-line options
- [getopt\_long\_only](https://manual.cs50.io/3/getopt_long_only) - Parse command-line options
- [getpagesize](https://manual.cs50.io/2/getpagesize) - get memory page size
- [getpass](https://manual.cs50.io/3/getpass) - get a password
- [getpgid](https://manual.cs50.io/2/getpgid) - set/get process group
- [getpgrp](https://manual.cs50.io/2/getpgrp) - set/get process group
- [getpid](https://manual.cs50.io/2/getpid) - get process identification
- [getppid](https://manual.cs50.io/2/getppid) - get process identification
- [getresgid](https://manual.cs50.io/2/getresgid) - get real, effective, and saved user/group IDs
- [getresgid32](https://manual.cs50.io/2/getresgid32) - get real, effective, and saved user/group IDs
- [getresuid](https://manual.cs50.io/2/getresuid) - get real, effective, and saved user/group IDs
- [getresuid32](https://manual.cs50.io/2/getresuid32) - get real, effective, and saved user/group IDs
- [getsid](https://manual.cs50.io/2/getsid) - get session ID
- [gettid](https://manual.cs50.io/2/gettid) - get thread identification
- [getuid](https://manual.cs50.io/2/getuid) - get user identity
- [getuid32](https://manual.cs50.io/2/getuid32) - get user identity
- [getusershell](https://manual.cs50.io/3/getusershell) - get permitted user shells
- [getwd](https://manual.cs50.io/3/getwd) - get current working directory
- [group\_member](https://manual.cs50.io/3/group_member) - test whether a process is in a group
- [idle](https://manual.cs50.io/2/idle) - make process 0 idle
- [init\_module](https://manual.cs50.io/2/init_module) - load a kernel module
- [io\_cancel](https://manual.cs50.io/2/io_cancel) - cancel an outstanding asynchronous I/O operation
- [io\_destroy](https://manual.cs50.io/2/io_destroy) - destroy an asynchronous I/O context
- [io\_getevents](https://manual.cs50.io/2/io_getevents) - read asynchronous I/O events from the completion queue
- [ioprio\_get](https://manual.cs50.io/2/ioprio_get) - get/set I/O scheduling class and priority
- [ioprio\_set](https://manual.cs50.io/2/ioprio_set) - get/set I/O scheduling class and priority
- [ipc](https://manual.cs50.io/2/ipc) - System V IPC system calls
- [isatty](https://manual.cs50.io/3/isatty) - test whether a file descriptor refers to a terminal
- [kcmp](https://manual.cs50.io/2/kcmp) - compare two processes to determine if they share a ker...
- [kexec\_file\_load](https://manual.cs50.io/2/kexec_file_load) - load a new kernel for later execution
- [kexec\_load](https://manual.cs50.io/2/kexec_load) - load a new kernel for later execution
- [keyctl](https://manual.cs50.io/2/keyctl) - manipulate the kernel's key management facility
- [klogctl](https://manual.cs50.io/3/klogctl) - read and/or clear kernel message ring buffer; set cons...
- [lchown](https://manual.cs50.io/2/lchown) - change ownership of a file
- [lchown32](https://manual.cs50.io/2/lchown32) - change ownership of a file
- [link](https://manual.cs50.io/2/link) - make a new name for a file
- [linkat](https://manual.cs50.io/2/linkat) - make a new name for a file
- [llseek](https://manual.cs50.io/2/llseek) - reposition read/write file offset
- [lockf](https://manual.cs50.io/3/lockf) - apply, test or remove a POSIX lock on an open file
- [lookup\_dcookie](https://manual.cs50.io/2/lookup_dcookie) - return a directory entry's path
- [lseek](https://manual.cs50.io/2/lseek) - reposition read/write file offset
- [membarrier](https://manual.cs50.io/2/membarrier) - issue memory barriers on a set of threads
- [memfd\_secret](https://manual.cs50.io/2/memfd_secret) - create an anonymous RAM-based file to access secret me...
- [mmap2](https://manual.cs50.io/2/mmap2) - map files or devices into memory
- [modify\_ldt](https://manual.cs50.io/2/modify_ldt) - get or set a per-process LDT entry
- [mount\_setattr](https://manual.cs50.io/2/mount_setattr) - change properties of a mount or mount tree
- [mq\_getsetattr](https://manual.cs50.io/2/mq_getsetattr) - get/set message queue attributes
- [nice](https://manual.cs50.io/2/nice) - change process priority
- [openat2](https://manual.cs50.io/2/openat2) - open and possibly create a file (extended)
- [optarg](https://manual.cs50.io/3/optarg) - Parse command-line options
- [opterr](https://manual.cs50.io/3/opterr) - Parse command-line options
- [optind](https://manual.cs50.io/3/optind) - Parse command-line options
- [optopt](https://manual.cs50.io/3/optopt) - Parse command-line options
- [pathconf](https://manual.cs50.io/3/pathconf) - get configuration values for files
- [pause](https://manual.cs50.io/2/pause) - wait for signal
- [perf\_event\_open](https://manual.cs50.io/2/perf_event_open) - set up performance monitoring
- [pidfd\_getfd](https://manual.cs50.io/2/pidfd_getfd) - obtain a duplicate of another process's file descriptor
- [pidfd\_open](https://manual.cs50.io/2/pidfd_open) - obtain a file descriptor that refers to a process
- [pidfd\_send\_signal](https://manual.cs50.io/2/pidfd_send_signal) - send a signal to a process specified by a file descri...
- [pipe](https://manual.cs50.io/2/pipe) - create pipe
- [pipe2](https://manual.cs50.io/2/pipe2) - create pipe
- [pivot\_root](https://manual.cs50.io/2/pivot_root) - change the root mount
- [pread](https://manual.cs50.io/2/pread) - read from or write to a file descriptor at a given offset
- [pread64](https://manual.cs50.io/2/pread64) - read from or write to a file descriptor at a given offset
- [profil](https://manual.cs50.io/3/profil) - execution time profile
- [pwrite](https://manual.cs50.io/2/pwrite) - read from or write to a file descriptor at a given offset
- [pwrite64](https://manual.cs50.io/2/pwrite64) - read from or write to a file descriptor at a given offset
- [read](https://manual.cs50.io/2/read) - read from a file descriptor
- [readdir](https://manual.cs50.io/2/readdir) - read directory entry
- [readlink](https://manual.cs50.io/2/readlink) - read value of a symbolic link
- [readlinkat](https://manual.cs50.io/2/readlinkat) - read value of a symbolic link
- [reboot](https://manual.cs50.io/2/reboot) - reboot or enable/disable Ctrl-Alt-Del
- [rmdir](https://manual.cs50.io/2/rmdir) - delete a directory
- [rt\_sigqueueinfo](https://manual.cs50.io/2/rt_sigqueueinfo) - queue a signal and data
- [rt\_tgsigqueueinfo](https://manual.cs50.io/2/rt_tgsigqueueinfo) - queue a signal and data
- [s390\_guarded\_storage](https://manual.cs50.io/2/s390_guarded_storage) - operations with z/Architecture guarded storage fac...
- [s390\_pci\_mmio\_read](https://manual.cs50.io/2/s390_pci_mmio_read) - transfer data to/from PCI MMIO memory page
- [s390\_pci\_mmio\_write](https://manual.cs50.io/2/s390_pci_mmio_write) - transfer data to/from PCI MMIO memory page
- [s390\_runtime\_instr](https://manual.cs50.io/2/s390_runtime_instr) - enable/disable s390 CPU run-time instrumentation
- [s390\_sthyi](https://manual.cs50.io/2/s390_sthyi) - emulate STHYI instruction
- [sbrk](https://manual.cs50.io/2/sbrk) - change data segment size
- [sched\_getattr](https://manual.cs50.io/2/sched_getattr) - set and get scheduling policy and attributes
- [sched\_setattr](https://manual.cs50.io/2/sched_setattr) - set and get scheduling policy and attributes
- [seccomp](https://manual.cs50.io/2/seccomp) - operate on Secure Computing state of the process
- [set\_robust\_list](https://manual.cs50.io/2/set_robust_list) - get/set list of robust futexes
- [set\_thread\_area](https://manual.cs50.io/2/set_thread_area) - manipulate thread-local storage information
- [set\_tid\_address](https://manual.cs50.io/2/set_tid_address) - set pointer to thread ID
- [setdomainname](https://manual.cs50.io/2/setdomainname) - get/set NIS domain name
- [setegid](https://manual.cs50.io/2/setegid) - set effective user or group ID
- [seteuid](https://manual.cs50.io/2/seteuid) - set effective user or group ID
- [setgid](https://manual.cs50.io/2/setgid) - set group identity
- [setgid32](https://manual.cs50.io/2/setgid32) - set group identity
- [setgroups](https://manual.cs50.io/2/setgroups) - get/set list of supplementary group IDs
- [setgroups32](https://manual.cs50.io/2/setgroups32) - get/set list of supplementary group IDs
- [sethostid](https://manual.cs50.io/3/sethostid) - get or set the unique identifier of the current host
- [sethostname](https://manual.cs50.io/2/sethostname) - get/set hostname
- [setkey](https://manual.cs50.io/3/setkey) - encrypt 64-bit messages
- [setkey\_r](https://manual.cs50.io/3/setkey_r) - encrypt 64-bit messages
- [setpgid](https://manual.cs50.io/2/setpgid) - set/get process group
- [setpgrp](https://manual.cs50.io/2/setpgrp) - set/get process group
- [setregid](https://manual.cs50.io/2/setregid) - set real and/or effective user or group ID
- [setregid32](https://manual.cs50.io/2/setregid32) - set real and/or effective user or group ID
- [setresgid](https://manual.cs50.io/2/setresgid) - set real, effective, and saved user or group ID
- [setresgid32](https://manual.cs50.io/2/setresgid32) - set real, effective, and saved user or group ID
- [setresuid](https://manual.cs50.io/2/setresuid) - set real, effective, and saved user or group ID
- [setresuid32](https://manual.cs50.io/2/setresuid32) - set real, effective, and saved user or group ID
- [setreuid](https://manual.cs50.io/2/setreuid) - set real and/or effective user or group ID
- [setreuid32](https://manual.cs50.io/2/setreuid32) - set real and/or effective user or group ID
- [setsid](https://manual.cs50.io/2/setsid) - creates a session and sets the process group ID
- [setuid](https://manual.cs50.io/2/setuid) - set user identity
- [setuid32](https://manual.cs50.io/2/setuid32) - set user identity
- [setup](https://manual.cs50.io/2/setup) - setup devices and filesystems, mount root filesystem
- [setusershell](https://manual.cs50.io/3/setusershell) - get permitted user shells
- [sgetmask](https://manual.cs50.io/2/sgetmask) - manipulation of signal mask (obsolete)
- [sleep](https://manual.cs50.io/3/sleep) - sleep for a specified number of seconds
- [socketcall](https://manual.cs50.io/2/socketcall) - socket system calls
- [spu\_create](https://manual.cs50.io/2/spu_create) - create a new spu context
- [spu\_run](https://manual.cs50.io/2/spu_run) - execute an SPU context
- [ssetmask](https://manual.cs50.io/2/ssetmask) - manipulation of signal mask (obsolete)
- [subpage\_prot](https://manual.cs50.io/2/subpage_prot) - define a subpage protection for an address range
- [swab](https://manual.cs50.io/3/swab) - swap adjacent bytes
- [symlink](https://manual.cs50.io/2/symlink) - make a new name for a file
- [symlinkat](https://manual.cs50.io/2/symlinkat) - make a new name for a file
- [sync](https://manual.cs50.io/2/sync) - commit filesystem caches to disk
- [syncfs](https://manual.cs50.io/2/syncfs) - commit filesystem caches to disk
- [syscall](https://manual.cs50.io/2/syscall) - indirect system call
- [sysconf](https://manual.cs50.io/3/sysconf) - get configuration information at run time
- [sysctl](https://manual.cs50.io/2/sysctl) - read/write system parameters
- [syslog](https://manual.cs50.io/2/syslog) - read and/or clear kernel message ring buffer; set cons...
- [tcgetpgrp](https://manual.cs50.io/3/tcgetpgrp) - get and set terminal foreground process group
- [tcsetpgrp](https://manual.cs50.io/3/tcsetpgrp) - get and set terminal foreground process group
- [tgkill](https://manual.cs50.io/2/tgkill) - send a signal to a thread
- [tkill](https://manual.cs50.io/2/tkill) - send a signal to a thread
- [truncate](https://manual.cs50.io/2/truncate) - truncate a file to a specified length
- [truncate64](https://manual.cs50.io/2/truncate64) - truncate a file to a specified length
- [ttyname](https://manual.cs50.io/3/ttyname) - return name of a terminal
- [ttyname\_r](https://manual.cs50.io/3/ttyname_r) - return name of a terminal
- [ualarm](https://manual.cs50.io/3/ualarm) - schedule signal after given number of microseconds
- [unlink](https://manual.cs50.io/2/unlink) - delete a name and possibly the file it refers to
- [unlinkat](https://manual.cs50.io/2/unlinkat) - delete a name and possibly the file it refers to
- [uselib](https://manual.cs50.io/2/uselib) - load shared library
- [userfaultfd](https://manual.cs50.io/2/userfaultfd) - create a file descriptor for handling page faults in u...
- [usleep](https://manual.cs50.io/3/usleep) - suspend execution for microsecond intervals
- [vfork](https://manual.cs50.io/2/vfork) - create a child process and block parent
- [vhangup](https://manual.cs50.io/2/vhangup) - virtually hangup the current terminal
- [write](https://manual.cs50.io/2/write) - write to a file descriptor
## [utime.h](https://manual.cs50.io/#utime.h)
- [utime](https://manual.cs50.io/2/utime) - change file last access and modification times
- [utimes](https://manual.cs50.io/2/utimes) - change file last access and modification times
## [utmpx.h](https://manual.cs50.io/#utmpx.h)
- [getutmp](https://manual.cs50.io/3/getutmp) - copy utmp structure to utmpx, and vice versa
- [getutmpx](https://manual.cs50.io/3/getutmpx) - copy utmp structure to utmpx, and vice versa
## [wchar.h](https://manual.cs50.io/#wchar.h)
- [btowc](https://manual.cs50.io/3/btowc) - convert single byte to wide character
- [fgetws](https://manual.cs50.io/3/fgetws) - read a wide-character string from a FILE stream
- [fputws](https://manual.cs50.io/3/fputws) - write a wide-character string to a FILE stream
- [fwide](https://manual.cs50.io/3/fwide) - set and determine the orientation of a FILE stream
- [getwchar](https://manual.cs50.io/3/getwchar) - read a wide character from standard input
- [mbrlen](https://manual.cs50.io/3/mbrlen) - determine number of bytes in next multibyte character
- [mbrtowc](https://manual.cs50.io/3/mbrtowc) - convert a multibyte sequence to a wide character
- [mbsinit](https://manual.cs50.io/3/mbsinit) - test for initial shift state
- [mbsnrtowcs](https://manual.cs50.io/3/mbsnrtowcs) - convert a multibyte string to a wide-character string
- [mbsrtowcs](https://manual.cs50.io/3/mbsrtowcs) - convert a multibyte string to a wide-character string ...
- [putwchar](https://manual.cs50.io/3/putwchar) - write a wide character to standard output
- [ungetwc](https://manual.cs50.io/3/ungetwc) - push back a wide character onto a FILE stream
- [wcpcpy](https://manual.cs50.io/3/wcpcpy) - copy a wide-character string, returning a pointer to i...
- [wcpncpy](https://manual.cs50.io/3/wcpncpy) - copy a fixed-size string of wide characters, returning...
- [wcrtomb](https://manual.cs50.io/3/wcrtomb) - convert a wide character to a multibyte sequence
- [wcscasecmp](https://manual.cs50.io/3/wcscasecmp) - compare two wide-character strings, ignoring case
- [wcscat](https://manual.cs50.io/3/wcscat) - concatenate two wide-character strings
- [wcschr](https://manual.cs50.io/3/wcschr) - search a wide character in a wide-character string
- [wcscmp](https://manual.cs50.io/3/wcscmp) - compare two wide-character strings
- [wcscpy](https://manual.cs50.io/3/wcscpy) - copy a wide-character string
- [wcscspn](https://manual.cs50.io/3/wcscspn) - search a wide-character string for any of a set of wid...
- [wcsdup](https://manual.cs50.io/3/wcsdup) - duplicate a wide-character string
- [wcslen](https://manual.cs50.io/3/wcslen) - determine the length of a wide-character string
- [wcsncasecmp](https://manual.cs50.io/3/wcsncasecmp) - compare two fixed-size wide-character strings, ignorin...
- [wcsncat](https://manual.cs50.io/3/wcsncat) - concatenate two wide-character strings
- [wcsncmp](https://manual.cs50.io/3/wcsncmp) - compare two fixed-size wide-character strings
- [wcsncpy](https://manual.cs50.io/3/wcsncpy) - copy a fixed-size string of wide characters
- [wcsnlen](https://manual.cs50.io/3/wcsnlen) - determine the length of a fixed-size wide-character st...
- [wcsnrtombs](https://manual.cs50.io/3/wcsnrtombs) - convert a wide-character string to a multibyte string
- [wcspbrk](https://manual.cs50.io/3/wcspbrk) - search a wide-character string for any of a set of wid...
- [wcsrchr](https://manual.cs50.io/3/wcsrchr) - search a wide character in a wide-character string
- [wcsrtombs](https://manual.cs50.io/3/wcsrtombs) - convert a wide-character string to a multibyte string
- [wcsspn](https://manual.cs50.io/3/wcsspn) - get length of a prefix wide-character substring
- [wcsstr](https://manual.cs50.io/3/wcsstr) - locate a substring in a wide-character string
- [wcstok](https://manual.cs50.io/3/wcstok) - split wide-character string into tokens
- [wcswidth](https://manual.cs50.io/3/wcswidth) - determine columns needed for a fixed-size wide-charact...
- [wctob](https://manual.cs50.io/3/wctob) - try to represent a wide character as a single byte
- [wcwidth](https://manual.cs50.io/3/wcwidth) - determine columns needed for a wide character
- [wmemchr](https://manual.cs50.io/3/wmemchr) - search a wide character in a wide-character array
- [wmemcmp](https://manual.cs50.io/3/wmemcmp) - compare two arrays of wide-characters
- [wmemcpy](https://manual.cs50.io/3/wmemcpy) - copy an array of wide-characters
- [wmemmove](https://manual.cs50.io/3/wmemmove) - copy an array of wide-characters
- [wmemset](https://manual.cs50.io/3/wmemset) - fill an array of wide-characters with a constant wide ...
## [wctype.h](https://manual.cs50.io/#wctype.h)
- [iswalnum](https://manual.cs50.io/3/iswalnum) - test for alphanumeric wide character
- [iswalpha](https://manual.cs50.io/3/iswalpha) - test for alphabetic wide character
- [iswblank](https://manual.cs50.io/3/iswblank) - test for whitespace wide character
- [iswcntrl](https://manual.cs50.io/3/iswcntrl) - test for control wide character
- [iswctype](https://manual.cs50.io/3/iswctype) - wide-character classification
- [iswdigit](https://manual.cs50.io/3/iswdigit) - test for decimal digit wide character
- [iswgraph](https://manual.cs50.io/3/iswgraph) - test for graphic wide character
- [iswlower](https://manual.cs50.io/3/iswlower) - test for lowercase wide character
- [iswprint](https://manual.cs50.io/3/iswprint) - test for printing wide character
- [iswpunct](https://manual.cs50.io/3/iswpunct) - test for punctuation or symbolic wide character
- [iswspace](https://manual.cs50.io/3/iswspace) - test for whitespace wide character
- [iswupper](https://manual.cs50.io/3/iswupper) - test for uppercase wide character
- [iswxdigit](https://manual.cs50.io/3/iswxdigit) - test for hexadecimal digit wide character
- [towctrans](https://manual.cs50.io/3/towctrans) - wide-character transliteration
- [towlower](https://manual.cs50.io/3/towlower) - convert a wide character to lowercase
- [towlower\_l](https://manual.cs50.io/3/towlower_l) - convert a wide character to lowercase
- [towupper](https://manual.cs50.io/3/towupper) - convert a wide character to uppercase
- [towupper\_l](https://manual.cs50.io/3/towupper_l) - convert a wide character to uppercase
- [wctrans](https://manual.cs50.io/3/wctrans) - wide-character translation mapping
- [wctype](https://manual.cs50.io/3/wctype) - wide-character classification
## [wordexp.h](https://manual.cs50.io/#wordexp.h)
- [wordexp](https://manual.cs50.io/3/wordexp) - perform word expansion like a posix-shell
- [wordfree](https://manual.cs50.io/3/wordfree) - perform word expansion like a posix-shell |
| Shard | 199 (laksa) |
| Root Hash | 7072350844791920999 |
| Unparsed URL | io,cs50!manual,/ s443 |