issues a compile-time diagnostic if the value of a constant expression is false (function macro)

Bounds checking

The standard library provides bounds-checked versions of some existing functions (gets_s, fopen_s, printf_s, strcpy_s, wcscpy_s, mbstowcs_s, qsort_s, getenv_s, etc). This functionality is optional and is only available if __STDC_LIB_EXT1__ is defined. The following macros and functions support this functionality.

Defined in header <errno.h>

Defined in header <stdio.h>

errno_t

(C11)

a typedef for the type int, used to self-document functions that return errno values (typedef)

Defined in header <stddef.h>

rsize_t

(C11)

a typedef for the same type as size_t, used to self-document functions that range-check their parameters at runtime (typedef)

Defined in header <stdint.h>

RSIZE_MAX

(C11)

largest acceptable size for bounds-checked functions, expands to either constant or variable which may change at runtime (e.g. as the currently allocated memory size changes)(macro variable)