13. C11 Standard Library#
This chapter has a subsection per header file to detail the methods provided by RTEMS that are in that header file.
The follow table summarizes alignment with the C11 Standard Library standard:
Support |
Amount |
---|---|
Supported |
535 |
ENOSYS |
1 |
Not supported |
1 |
13.1. <assert.h>
#
The following methods and variables in <assert.h>
are supported:
assert()
13.2. <complex.h>
#
The following methods and variables in <complex.h>
are supported:
cabs()
cabsf()
cabsl()
cacos()
cacosf()
cacosh()
cacoshf()
cacoshl()
cacosl()
carg()
cargf()
cargl()
casin()
casinf()
casinh()
casinhf()
casinhl()
casinl()
catan()
catanf()
catanh()
catanhf()
catanhl()
catanl()
ccos()
ccosf()
ccosh()
ccoshf()
ccoshl()
ccosl()
cexp()
cexpf()
cexpl()
cimag()
cimagf()
cimagl()
clog()
clogf()
clogl()
conj()
conjf()
conjl()
cpow()
cpowf()
cpowl()
cproj()
cprojf()
cprojl()
creal()
crealf()
creall()
csin()
csinf()
csinh()
csinhf()
csinhl()
csinl()
csqrt()
csqrtf()
csqrtl()
ctan()
ctanf()
ctanh()
ctanhf()
ctanhl()
ctanl()
13.3. <ctype.h>
#
The following methods and variables in <ctype.h>
are supported:
isalnum()
isalpha()
isblank()
iscntrl()
isdigit()
isgraph()
islower()
isprint()
ispunct()
isspace()
isupper()
isxdigit()
tolower()
toupper()
13.4. <errno.h>
#
The following methods and variables in <errno.h>
are supported:
errno
13.5. <fenv.h>
#
The following methods and variables in <fenv.h>
are supported:
feclearexcept()
fegetenv()
fegetexceptflag()
fegetround()
feholdexcept()
feraiseexcept()
fesetenv()
fesetexceptflag()
fesetround()
fetestexcept()
feupdateenv()
13.6. <inttypes.h>
#
The following methods and variables in <inttypes.h>
are supported:
imaxabs()
imaxdiv()
strtoimax()
strtoumax()
wcstoimax()
wcstoumax()
13.7. <locale.h>
#
The following methods and variables in <locale.h>
are supported:
localeconv()
setlocale()
13.8. <math.h>
#
The following methods and variables in <math.h>
are supported:
acos()
acosf()
acosh()
acoshf()
acoshl()
acosl()
asin()
asinf()
asinh()
asinhf()
asinhl()
asinl()
atan()
atan2()
atan2f()
atan2l()
atanf()
atanh()
atanhf()
atanhl()
atanl()
cbrt()
cbrtf()
cbrtl()
ceil()
ceilf()
ceill()
copysign()
copysignf()
copysignl()
cos()
cosf()
cosh()
coshf()
coshl()
cosl()
erf()
erfc()
erfcf()
erfcl()
erff()
erfl()
exp()
exp2()
exp2f()
exp2l()
expf()
expl()
expm1()
expm1f()
expm1l()
fabs()
fabsf()
fabsl()
fdim()
fdimf()
fdiml()
floor()
floorf()
floorl()
fma()
fmaf()
fmal()
fmax()
fmaxf()
fmaxl()
fmin()
fminf()
fminl()
fmod()
fmodf()
fmodl()
fpclassify()
frexp()
frexpf()
frexpl()
hypot()
hypotf()
hypotl()
ilogb()
ilogbf()
ilogbl()
isfinite()
isgreater()
isgreaterequal()
isinf()
isless()
islessequal()
islessgreater()
isnan()
isnormal()
isunordered()
ldexp()
ldexpf()
ldexpl()
lgamma()
lgammaf()
lgammal()
llrint()
llrintf()
llrintl()
llround()
llroundf()
llroundl()
log()
log10()
log10f()
log10l()
log1p()
log1pf()
log1pl()
log2()
log2f()
log2l()
logb()
logbf()
logbl()
logf()
logl()
lrint()
lrintf()
lrintl()
lround()
lroundf()
lroundl()
modf()
modff()
modfl()
nan()
nanf()
nanl()
nearbyint()
nearbyintf()
nearbyintl()
nextafter()
nextafterf()
nextafterl()
nexttoward()
nexttowardf()
nexttowardl()
pow()
powf()
powl()
remainder()
remainderf()
remainderl()
remquo()
remquof()
remquol()
rint()
rintf()
rintl()
round()
roundf()
roundl()
scalbln()
scalblnf()
scalblnl()
scalbn()
scalbnf()
scalbnl()
sin()
sinf()
sinh()
sinhf()
sinhl()
sinl()
sqrt()
sqrtf()
sqrtl()
tan()
tanf()
tanh()
tanhf()
tanhl()
tanl()
tgamma()
tgammaf()
tgammal()
trunc()
truncf()
truncl()
The following methods and variables in <math.h>
are not supported:
signbit()
13.9. <setjmp.h>
#
The following methods and variables in <setjmp.h>
are supported:
longjmp()
setjmp()
13.10. <signal.h>
#
The following methods and variables in <signal.h>
are supported:
raise()
signal()
13.11. <stdarg.h>
#
The following methods and variables in <stdarg.h>
are supported:
va_arg()
va_copy()
va_end()
va_start()
13.12. <stdatomic.h>
#
The following methods and variables in <stdatomic.h>
are supported:
ATOMIC_VAR_INIT()
atomic_compare_exchange_strong()
atomic_compare_exchange_strong_explicit()
atomic_compare_exchange_weak()
atomic_compare_exchange_weak_explicit()
atomic_exchange()
atomic_exchange_explicit()
atomic_fetch_key()
atomic_fetch_key_explicit()
atomic_flag_clear()
atomic_flag_clear_explicit()
atomic_flag_test_and_set()
atomic_flag_test_and_set_explicit()
atomic_init()
atomic_is_lock_free()
atomic_load()
atomic_load_explicit()
atomic_signal_fence()
atomic_store()
atomic_store_explicit()
atomic_thread_fence()
13.13. <stddef.h>
#
The following methods and variables in <stddef.h>
are supported:
offsetof()
13.14. <stdint.h>
#
The following methods and variables in <stdint.h>
are supported:
INTMAX_C()
INTN_C()
UINTMAX_C()
UINTN_C()
13.15. <stdio.h>
#
The following methods and variables in <stdio.h>
are supported:
clearerr()
fclose()
feof()
ferror()
fflush()
fgetc()
fgetpos()
fgets()
fopen()
fprintf()
fputc()
fputs()
fread()
freopen()
fscanf()
fseek()
fsetpos()
ftell()
fwrite()
getc()
getchar()
perror()
printf()
putc()
putchar()
puts()
remove()
rename()
rewind()
scanf()
setbuf()
setvbuf()
snprintf()
sprintf()
sscanf()
stderr
stdin
stdout
tmpfile()
tmpnam()
ungetc()
vfprintf()
vfscanf()
vprintf()
vscanf()
vsnprintf()
vsprintf()
vsscanf()
13.16. <stdlib.h>
#
The following methods and variables in <stdlib.h>
are supported:
_Exit()
abs()
aligned_alloc()
at_quick_exit()
atexit()
atof()
atoi()
atol()
atoll()
bsearch()
calloc()
div()
exit()
free()
getenv()
labs()
ldiv()
llabs()
lldiv()
malloc()
mblen()
mbstowcs()
mbtowc()
qsort()
quick_exit()
rand()
realloc()
srand()
strtod()
strtof()
strtol()
strtold()
strtoll()
strtoul()
strtoull()
wcstombs()
wctomb()
The following methods in <stdlib.h>
are implemented as
stubs returning -1
and setting errno
to ENOSYS
:
system()
13.17. <string.h>
#
The following methods and variables in <string.h>
are supported:
memchr()
memcmp()
memcpy()
memmove()
memset()
strcat()
strchr()
strcmp()
strcoll()
strcpy()
strcspn()
strerror()
strlen()
strncat()
strncmp()
strncpy()
strpbrk()
strrchr()
strspn()
strstr()
strtok()
strxfrm()
13.18. <threads.h>
#
The following methods and variables in <threads.h>
are supported:
call_once()
cnd_broadcast()
cnd_destroy()
cnd_init()
cnd_signal()
cnd_timedwait()
cnd_wait()
mtx_destroy()
mtx_init()
mtx_lock()
mtx_timedlock()
mtx_trylock()
mtx_unlock()
thrd_create()
thrd_current()
thrd_detach()
thrd_equal()
thrd_exit()
thrd_join()
thrd_sleep()
thrd_yield()
tss_create()
tss_delete()
tss_get()
tss_set()
13.19. <time.h>
#
The following methods and variables in <time.h>
are supported:
asctime()
clock()
ctime()
difftime()
gmtime()
localtime()
mktime()
strftime()
time()
13.20. <wchar.h>
#
The following methods and variables in <wchar.h>
are supported:
btowc()
fgetwc()
fgetws()
fputwc()
fputws()
fwide()
fwprintf()
fwscanf()
getwc()
getwchar()
mbrlen()
mbrtowc()
mbsinit()
mbsrtowcs()
putwc()
putwchar()
swprintf()
swscanf()
ungetwc()
vfwprintf()
vfwscanf()
vswprintf()
vswscanf()
vwprintf()
vwscanf()
wcrtomb()
wcscat()
wcschr()
wcscmp()
wcscoll()
wcscpy()
wcscspn()
wcsftime()
wcslen()
wcsncat()
wcsncmp()
wcsncpy()
wcspbrk()
wcsrchr()
wcsrtombs()
wcsspn()
wcsstr()
wcstod()
wcstof()
wcstok()
wcstol()
wcstold()
wcstoll()
wcstoul()
wcstoull()
wcsxfrm()
wctob()
wmemchr()
wmemcmp()
wmemcpy()
wmemmove()
wmemset()
wprintf()
wscanf()
13.21. <wctype.h>
#
The following methods and variables in <wctype.h>
are supported:
iswalnum()
iswalpha()
iswblank()
iswcntrl()
iswctype()
iswdigit()
iswgraph()
iswlower()
iswprint()
iswpunct()
iswspace()
iswupper()
iswxdigit()
towctrans()
towlower()
towupper()
wctrans()
wctype()