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()