Matrix of C Library-Supported Functions

The following C Runtime library calls are supported in the RTSS environment.

As of SDK version 3.5, RTX64 supports implicit thread-local storage. For more information, see the Microsoft documentation at https://docs.microsoft.com/en-us/cpp/cpp/storage-classes-cpp.

NOTE: Code executed by shutdown handler callback functions cannot use implicit thread-local storage.

NOTE: You can define UNDER_RTSS_UNSUPPORTED_CRT_APIS either before rtapi.h is included or as a pre-processor definition to see what RTSS C Runtime functions have been deprecated.

NOTE: APIs that are not explicitly documented as supported are not guaranteed to work. You should thoroughly test any code that uses undocumented functions.

C Library Function Name

Notes

Deterministic?

_aligned_free

 

No  

_aligned_malloc

 

No

_aligned_msize

 

No  

_aligned_offset_malloc

 

No  

_aligned_offset_realloc

 

No  

_aligned_offset_recalloc

 

No  

_aligned_realloc

 

No  

_aligned_recalloc

 

No  

abs

 

Yes - the elapsed time for the call is less than 5 microseconds.

acos

 

Yes - the elapsed time for the call is less than 5 microseconds.

asin

 

Yes - the elapsed time for the call is less than 5 microseconds.

atan

 

Yes - the elapsed time for the call is less than 5 microseconds.

atan2

 

Yes - the elapsed time for the call is less than 5 microseconds.

atof

 

Yes - the elapsed time for the call is less than 5 microseconds.

atoi

The call is supported as both an Rt call and as a Windows call (for example, RtAtoi and Atoi)

Yes - the elapsed time for the call is less than 5 microseconds.

atol

 

Yes - the elapsed time for the call is less than 5 microseconds.

bsearch

 

Yes - the call is deterministic for small input sizes.

calloc

 

No

ceil

 

Yes - the elapsed time for the call is less than 5 microseconds.

clearerr  

No

cos

 

Yes - the elapsed time for the call is less than 5 microseconds.

cosh

 

Yes - the elapsed time for the call is less than 5 microseconds.

difftime

 

Yes - the elapsed time for the call is less than 5 microseconds.

div

 

Yes - the elapsed time for the call is less than 5 microseconds.

errno

 

No

exit

  No

exp

 

Yes - the elapsed time for the call is less than 5 microseconds.

fabs

 

Yes - the elapsed time for the call is less than 5 microseconds.

fclose

  No
feof    

ferror

 

No

fflush

  No

fgets

  No

floor

 

Yes - the elapsed time for the call is less than 5 microseconds.

fmod

 

Yes - the elapsed time for the call is less than 5 microseconds.

fopen

  No

fprintf(stderr)

 

No

fputc

  No

fputs

  No

fread

  No

free

  No

frexp

 

Yes - the elapsed time for the call is less than 5 microseconds.

fseek

  No

ftell

  No

fwrite

  No

getc

  No

isalnum

 

Yes - the elapsed time for the call is less than 5 microseconds.

isalpha

 

Yes - the elapsed time for the call is less than 5 microseconds.

iscntrl

 

Yes - the elapsed time for the call is less than 5 microseconds.

isdigit

 

Yes - the elapsed time for the call is less than 5 microseconds.

isgraph

 

Yes - the elapsed time for the call is less than 5 microseconds.

islower

 

Yes - the elapsed time for the call is less than 5 microseconds.

isprint

 

Yes - the elapsed time for the call is less than 5 microseconds.

ispunct

  Yes - the elapsed time for the call is less than 5 microseconds.

isspace

 

Yes - the elapsed time for the call is less than 5 microseconds.

isupper

 

Yes - the elapsed time for the call is less than 5 microseconds.

iswalnum

 

Yes - the elapsed time for the call is less than 5 microseconds.

iswalpha

 

Yes - the elapsed time for the call is less than 5 microseconds.

iswascii

 

Yes - the elapsed time for the call is less than 5 microseconds.

iswcntrl

 

Yes - the elapsed time for the call is less than 5 microseconds.

iswctype

 

Yes - the elapsed time for the call is less than 5 microseconds.

iswdigit

 

Yes - the elapsed time for the call is less than 5 microseconds.

iswgraph

 

Yes - the elapsed time for the call is less than 5 microseconds.

iswlower

 

Yes - the elapsed time for the call is less than 5 microseconds.

iswprint

 

Yes - the elapsed time for the call is less than 5 microseconds.

iswpunct

 

Yes - the elapsed time for the call is less than 5 microseconds.

iswspace

  Yes - the elapsed time for the call is less than 5 microseconds.

iswupper

 

Yes - the elapsed time for the call is less than 5 microseconds.

iswxdigit

 

Yes - the elapsed time for the call is less than 5 microseconds.

isxdigit

 

Yes - the elapsed time for the call is less than 5 microseconds.

labs

 

Yes - the elapsed time for the call is less than 5 microseconds.

ldexp

 

Yes - the elapsed time for the call is less than 5 microseconds.

ldiv

 

Yes - the elapsed time for the call is less than 5 microseconds.

log

 

Yes - the elapsed time for the call is less than 5 microseconds.

log10

 

Yes - the elapsed time for the call is less than 5 microseconds.

longjmp

 

Yes - the elapsed time for the call is less than 5 microseconds.

main

  No

malloc

  No

memchr

 

Yes - the elapsed time for the call is less than 5 microseconds.

memcmp

 

Yes - the call is deterministic for small input sizes.

memcpy

 

Yes - the call is deterministic for small input sizes.

memmove

 

Yes - the call is deterministic for small input sizes.

memset

 

Yes - the elapsed time for the call is less than 5 microseconds.

modf

 

Yes - the elapsed time for the call is less than 5 microseconds.

perror

 

No

pow

 

Yes - the elapsed time for the call is less than 5 microseconds.

printf

The call is supported as both an Rt call and as a Windows call (for example, RtAtoi and Atoi)

No

putc

  No

putchar

  No

qsort

 

Yes - for small input sizes and if comparison function is deterministic

rand

 

No - can allocate memory.

realloc

  No

rewind

  No

setjmp

 

Yes - the elapsed time for the call is less than 5 microseconds.

signal

  No

sin

 

Yes - the elapsed time for the call is less than 5 microseconds.

sinh

 

Yes - the elapsed time for the call is less than 5 microseconds.

sprintf

The call is supported as both an Rt call and as a Windows call (for example, RtAtoi and Atoi)

Yes - the call is deterministic for small input sizes.

sqrt

 

Yes - the elapsed time for the call is less than 5 microseconds.

srand

 

No - can allocate memory.

sscanf

  No

strcat

 

Yes - the elapsed time for the call is less than 5 microseconds.

strchr

 

Yes - the elapsed time for the call is less than 5 microseconds.

strcmp

 

Yes - the elapsed time for the call is less than 5 microseconds.

strcpy

 

Yes - the call is deterministic for small input sizes.

strcspn

 

Yes - the elapsed time for the call is less than 5 microseconds.

strftime

  Yes - the elapsed time for the call is less than 5 microseconds.

strerror

 

No - can allocate memory.

strlen

 

Yes - the elapsed time for the call is less than 5 microseconds.

strncat

 

Yes - the elapsed time for the call is less than 5 microseconds.

strncmp

 

Yes - the call is deterministic for small input sizes.

strncpy

 

Yes - the call is deterministic for small input sizes.

strpbrk

 

Yes - the elapsed time for the call is less than 5 microseconds.

strrchr

 

Yes - the elapsed time for the call is less than 5 microseconds.

strspn

  Yes - the elapsed time for the call is less than 5 microseconds.

strstr

 

Yes - the elapsed time for the call is less than 5 microseconds.

strtod

 

Yes - the elapsed time for the call is less than 5 microseconds.

strtok

 

Yes - the elapsed time for the call is less than 5 microseconds.

strtol

 

Yes - the elapsed time for the call is less than 5 microseconds.

strtoul

 

Yes - the elapsed time for the call is less than 5 microseconds.

swprintf

 

Yes - the call is deterministic for small input sizes.

tan

 

Yes - the elapsed time for the call is less than 5 microseconds.

tanh

 

Yes - the elapsed time for the call is less than 5 microseconds.

tolower

 

Yes - the elapsed time for the call is less than 5 microseconds.

toupper

 

Yes - the elapsed time for the call is less than 5 microseconds.

towlower

 

Yes - the elapsed time for the call is less than 5 microseconds.

towupper

 

Yes - the elapsed time for the call is less than 5 microseconds.

ungetc

 

No - can allocate memory.

va_start

 

Yes - the elapsed time for the call is less than 5 microseconds.

vsprintf

 

No

wcscat

 

Yes - the elapsed time for the call is less than 5 microseconds.

wcschr

  Yes - the elapsed time for the call is less than 5 microseconds.

wcscmp

 

Yes - the elapsed time for the call is less than 5 microseconds.

wcscpy

  Yes - the elapsed time for the call is less than 5 microseconds.

wcscspn

 

Yes - the elapsed time for the call is less than 5 microseconds.

wcsftime

 

Yes - the elapsed time for the call is less than 5 microseconds.

wcslen

  Yes - the elapsed time for the call is less than 5 microseconds.

wcsncat

  Yes - the elapsed time for the call is less than 5 microseconds.

wcsncmp

 

Yes - the call is deterministic for small input sizes.

wcsncpy

  Yes - the call is deterministic for small input sizes.

wcspbrk

 

Yes - the elapsed time for the call is less than 5 microseconds.

wcsrchr

  Yes - the elapsed time for the call is less than 5 microseconds.

wcsspn

  Yes - the elapsed time for the call is less than 5 microseconds.

wcsstr

 

Yes - the elapsed time for the call is less than 5 microseconds.

wcstod

  Yes - the elapsed time for the call is less than 5 microseconds.

wcstok

 

Yes - the elapsed time for the call is less than 5 microseconds.

wcstol

  Yes - the elapsed time for the call is less than 5 microseconds.

wcstoul

 

Yes - the elapsed time for the call is less than 5 microseconds.

wmain

  No

wprintf

The call is supported as both an Rt call and as a Windows call (for example, RtAtoi and Atoi)

No

_wtof

 

Yes - the elapsed time for the call is less than 5 microseconds.

_wtoi

The call is supported as both an Rt call and as a Windows call (for example, RtAtoi and Atoi)

Yes - the elapsed time for the call is less than 5 microseconds.

_wtol

  Yes - the elapsed time for the call is less than 5 microseconds.

_controlfp

  No

_fpreset

  No

 

 


Copyright © 2013-2024 by IntervalZero. All rights reserved.

intervalzero.com | Technical Support | Send Feedback