SDL_stdinc.h File Reference
`#include "SDL_config.h"`
`#include <sys/types.h>`
`#include <stdio.h>`
`#include <stdlib.h>`
`#include <stddef.h>`
`#include <stdarg.h>`
`#include <string.h>`
`#include <strings.h>`
`#include <wchar.h>`
`#include <inttypes.h>`
`#include <ctype.h>`
`#include <math.h>`
`#include <float.h>`
`#include <alloca.h>`
`#include "begin_code.h"`
`#include "close_code.h"`
Include dependency graph for SDL_stdinc.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Macros

#define | SDL_SIZE_MAX ((size_t) -1)
#define | _SDL_HAS_BUILTIN(x)
#define | SDL_arraysize(array)
#define | SDL_TABLESIZE(table)
#define | SDL_STRINGIFY_ARG(arg)
Cast operators
Use proper C++ casts when compiled as C++ to be compatible with the option -Wold-style-cast of GCC (and -Werror=old-style-cast in GCC 4.2 and above).
#define | SDL_reinterpret_cast(type, expression)
#define | SDL_static_cast(type, expression)
#define | SDL_const_cast(type, expression)
#define | SDL_FOURCC(A, B, C, D)

## Basic data types

#define | SDL_MAX_SINT8 ((Sint8)0x7F) /* 127 */
#define | SDL_MIN_SINT8 ((Sint8)(~0x7F)) /* -128 */
#define | SDL_MAX_UINT8 ((Uint8)0xFF) /* 255 */
#define | SDL_MIN_UINT8 ((Uint8)0x00) /* 0 */
#define | SDL_MAX_SINT16 ((Sint16)0x7FFF) /* 32767 */
#define | SDL_MIN_SINT16 ((Sint16)(~0x7FFF)) /* -32768 */
#define | SDL_MAX_UINT16 ((Uint16)0xFFFF) /* 65535 */
#define | SDL_MIN_UINT16 ((Uint16)0x0000) /* 0 */
#define | SDL_MAX_SINT32 ((Sint32)0x7FFFFFFF) /* 2147483647 */
#define | SDL_MIN_SINT32 ((Sint32)(~0x7FFFFFFF)) /* -2147483648 */
#define | SDL_MAX_UINT32 ((Uint32)0xFFFFFFFFu) /* 4294967295 */
#define | SDL_MIN_UINT32 ((Uint32)0x00000000) /* 0 */
#define | SDL_MAX_SINT64 ((Sint64)0x7FFFFFFFFFFFFFFFll) /* 9223372036854775807 */
#define | SDL_MIN_SINT64 ((Sint64)(~0x7FFFFFFFFFFFFFFFll)) /* -9223372036854775808 */
#define | SDL_MAX_UINT64 ((Uint64)0xFFFFFFFFFFFFFFFFull) /* 18446744073709551615 */
#define | SDL_MIN_UINT64 ((Uint64)(0x0000000000000000ull)) /* 0 */
enum | SDL_bool { SDL_FALSE = 0 , SDL_TRUE = 1 }
typedef int8_t | Sint8
typedef uint8_t | Uint8
typedef int16_t | Sint16
typedef uint16_t | Uint16
typedef int32_t | Sint32
typedef uint32_t | Uint32
typedef int64_t | Sint64
typedef uint64_t | Uint64

## Floating-point constants

#define | SDL_FLT_EPSILON 1.1920928955078125e-07F /* 0x0.000002p0 */
#define | SDL_PRIs64 "I64d"
#define | SDL_PRIu64 "I64u"
#define | SDL_PRIx64 "I64x"
#define | SDL_PRIX64 "I64X"
#define | SDL_PRIs32 "d"
#define | SDL_PRIu32 "u"
#define | SDL_PRIx32 "x"
#define | SDL_PRIX32 "X"
#define | SDL_IN_BYTECAP(x)
#define | SDL_INOUT_Z_CAP(x)
#define | SDL_OUT_Z_CAP(x)
#define | SDL_OUT_CAP(x)
#define | SDL_OUT_BYTECAP(x)
#define | SDL_OUT_Z_BYTECAP(x)
#define | SDL_PRINTF_FORMAT_STRING
#define | SDL_SCANF_FORMAT_STRING
#define | SDL_PRINTF_VARARG_FUNC(fmtargnumber)
#define | SDL_PRINTF_VARARG_FUNCV(fmtargnumber)
#define | SDL_SCANF_VARARG_FUNC(fmtargnumber)
#define | SDL_SCANF_VARARG_FUNCV(fmtargnumber)
#define | SDL_COMPILE_TIME_ASSERT(name, x)
#define | SDL_stack_alloc(type, count)
#define | SDL_stack_free(data)
#define | SDL_min(x, y)
#define | SDL_max(x, y)
#define | SDL_clamp(x, a, b)
#define | SDL_zero(x)
#define | SDL_zerop(x)
#define | SDL_zeroa(x)
#define | SDL_copyp(dst, src)
#define | SDL_ICONV_ERROR (size_t)-1
#define | SDL_ICONV_E2BIG (size_t)-2
#define | SDL_ICONV_EILSEQ (size_t)-3
#define | SDL_ICONV_EINVAL (size_t)-4
#define | SDL_iconv_utf8_locale(S)
#define | SDL_iconv_utf8_ucs2(S)
#define | SDL_iconv_utf8_ucs4(S)
#define | SDL_iconv_wchar_utf8(S)
typedef void *(* | SDL_malloc_func) (size_t size)
typedef void *(* | SDL_calloc_func) (size_t nmemb, size_t size)
typedef void *(* | SDL_realloc_func) (void *mem, size_t size)
typedef void(* | SDL_free_func) (void *mem)
typedef int(* | SDL_CompareCallback) (const void *, const void *)
typedef struct _SDL_iconv_t * | SDL_iconv_t
void * | SDL_malloc (size_t size)
void * | SDL_calloc (size_t nmemb, size_t size)
void * | SDL_realloc (void *mem, size_t size)
void | SDL_free (void *mem)
void | SDL_GetOriginalMemoryFunctions (SDL_malloc_func *malloc_func, SDL_calloc_func *calloc_func, SDL_realloc_func *realloc_func, SDL_free_func *free_func)
void | SDL_GetMemoryFunctions (SDL_malloc_func *malloc_func, SDL_calloc_func *calloc_func, SDL_realloc_func *realloc_func, SDL_free_func *free_func)
int | SDL_SetMemoryFunctions (SDL_malloc_func malloc_func, SDL_calloc_func calloc_func, SDL_realloc_func realloc_func, SDL_free_func free_func)
int | SDL_GetNumAllocations (void)
char * | SDL_getenv (const char *name)
int | SDL_setenv (const char *name, const char *value, int overwrite)
void | SDL_qsort (void *base, size_t nmemb, size_t size, SDL_CompareCallback compare)
void * | SDL_bsearch (const void *key, const void *base, size_t nmemb, size_t size, SDL_CompareCallback compare)
int | SDL_abs (int x)
int | SDL_isalpha (int x)
int | SDL_isalnum (int x)
int | SDL_isblank (int x)
int | SDL_iscntrl (int x)
int | SDL_isdigit (int x)
int | SDL_isxdigit (int x)
int | SDL_ispunct (int x)
int | SDL_isspace (int x)
int | SDL_isupper (int x)
int | SDL_islower (int x)
int | SDL_isprint (int x)
int | SDL_isgraph (int x)
int | SDL_toupper (int x)
int | SDL_tolower (int x)
Uint16 | SDL_crc16 (Uint16 crc, const void *data, size_t len)
Uint32 | SDL_crc32 (Uint32 crc, const void *data, size_t len)
void * | SDL_memset (SDL_OUT_BYTECAP(len) void *dst, int c, size_t len)
SDL_FORCE_INLINE void | SDL_memset4 (void *dst, Uint32 val, size_t dwords)
void * | SDL_memcpy (SDL_OUT_BYTECAP(len) void *dst, SDL_IN_BYTECAP(len) const void *src, size_t len)
void * | SDL_memmove (SDL_OUT_BYTECAP(len) void *dst, SDL_IN_BYTECAP(len) const void *src, size_t len)
int | SDL_memcmp (const void *s1, const void *s2, size_t len)
size_t | SDL_wcslen (const wchar_t *wstr)
size_t | SDL_wcslcpy (SDL_OUT_Z_CAP(maxlen) wchar_t *dst, const wchar_t *src, size_t maxlen)
size_t | SDL_wcslcat (SDL_INOUT_Z_CAP(maxlen) wchar_t *dst, const wchar_t *src, size_t maxlen)
wchar_t * | SDL_wcsdup (const wchar_t *wstr)
wchar_t * | SDL_wcsstr (const wchar_t *haystack, const wchar_t *needle)
int | SDL_wcscmp (const wchar_t *str1, const wchar_t *str2)
int | SDL_wcsncmp (const wchar_t *str1, const wchar_t *str2, size_t maxlen)
int | SDL_wcscasecmp (const wchar_t *str1, const wchar_t *str2)
int | SDL_wcsncasecmp (const wchar_t *str1, const wchar_t *str2, size_t len)
size_t | SDL_strlen (const char *str)
size_t | SDL_strlcpy (SDL_OUT_Z_CAP(maxlen) char *dst, const char *src, size_t maxlen)
size_t | SDL_utf8strlcpy (SDL_OUT_Z_CAP(dst_bytes) char *dst, const char *src, size_t dst_bytes)
size_t | SDL_strlcat (SDL_INOUT_Z_CAP(maxlen) char *dst, const char *src, size_t maxlen)
char * | SDL_strdup (const char *str)
char * | SDL_strrev (char *str)
char * | SDL_strupr (char *str)
char * | SDL_strlwr (char *str)
char * | SDL_strchr (const char *str, int c)
char * | SDL_strrchr (const char *str, int c)
char * | SDL_strstr (const char *haystack, const char *needle)
char * | SDL_strcasestr (const char *haystack, const char *needle)
char * | SDL_strtokr (char *s1, const char *s2, char **saveptr)
size_t | SDL_utf8strlen (const char *str)
size_t | SDL_utf8strnlen (const char *str, size_t bytes)
char * | SDL_itoa (int value, char *str, int radix)
char * | SDL_uitoa (unsigned int value, char *str, int radix)
char * | SDL_ltoa (long value, char *str, int radix)
char * | SDL_ultoa (unsigned long value, char *str, int radix)
char * | SDL_lltoa (Sint64 value, char *str, int radix)
char * | SDL_ulltoa (Uint64 value, char *str, int radix)
int | SDL_atoi (const char *str)
double | SDL_atof (const char *str)
long | SDL_strtol (const char *str, char **endp, int base)
unsigned long | SDL_strtoul (const char *str, char **endp, int base)
Sint64 | SDL_strtoll (const char *str, char **endp, int base)
Uint64 | SDL_strtoull (const char *str, char **endp, int base)
double | SDL_strtod (const char *str, char **endp)
int | SDL_strcmp (const char *str1, const char *str2)
int | SDL_strncmp (const char *str1, const char *str2, size_t maxlen)
int | SDL_strcasecmp (const char *str1, const char *str2)
int | SDL_strncasecmp (const char *str1, const char *str2, size_t len)
int | SDL_sscanf (const char *text, SDL_SCANF_FORMAT_STRING const char *fmt,...) SDL_SCANF_VARARG_FUNC(2)
int | SDL_vsscanf (const char *text, SDL_SCANF_FORMAT_STRING const char *fmt, va_list ap) SDL_SCANF_VARARG_FUNCV(2)
int | SDL_snprintf (SDL_OUT_Z_CAP(maxlen) char *text, size_t maxlen, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(3)
int | SDL_vsnprintf (SDL_OUT_Z_CAP(maxlen) char *text, size_t maxlen, SDL_PRINTF_FORMAT_STRING const char *fmt, va_list ap) SDL_PRINTF_VARARG_FUNCV(3)
int | SDL_asprintf (char **strp, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
int | SDL_vasprintf (char **strp, SDL_PRINTF_FORMAT_STRING const char *fmt, va_list ap) SDL_PRINTF_VARARG_FUNCV(2)
double | SDL_acos (double x)
float | SDL_acosf (float x)
double | SDL_asin (double x)
float | SDL_asinf (float x)
double | SDL_atan (double x)
float | SDL_atanf (float x)
double | SDL_atan2 (double y, double x)
float | SDL_atan2f (float y, float x)
double | SDL_ceil (double x)
float | SDL_ceilf (float x)
double | SDL_copysign (double x, double y)
float | SDL_copysignf (float x, float y)
double | SDL_cos (double x)
float | SDL_cosf (float x)
double | SDL_exp (double x)
float | SDL_expf (float x)
double | SDL_fabs (double x)
float | SDL_fabsf (float x)
double | SDL_floor (double x)
float | SDL_floorf (float x)
double | SDL_trunc (double x)
float | SDL_truncf (float x)
double | SDL_fmod (double x, double y)
float | SDL_fmodf (float x, float y)
double | SDL_log (double x)
float | SDL_logf (float x)
double | SDL_log10 (double x)
float | SDL_log10f (float x)
double | SDL_pow (double x, double y)
float | SDL_powf (float x, float y)
double | SDL_round (double x)
float | SDL_roundf (float x)
long | SDL_lround (double x)
long | SDL_lroundf (float x)
double | SDL_scalbn (double x, int n)
float | SDL_scalbnf (float x, int n)
double | SDL_sin (double x)
float | SDL_sinf (float x)
double | SDL_sqrt (double x)
float | SDL_sqrtf (float x)
double | SDL_tan (double x)
float | SDL_tanf (float x)
SDL_iconv_t | SDL_iconv_open (const char *tocode, const char *fromcode)
int | SDL_iconv_close (SDL_iconv_t cd)
size_t | SDL_iconv (SDL_iconv_t cd, const char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft)
char * | SDL_iconv_string (const char *tocode, const char *fromcode, const char *inbuf, size_t inbytesleft)
SDL_FORCE_INLINE void * | SDL_memcpy4 (SDL_OUT_BYTECAP(dwords *4) void *dst, SDL_IN_BYTECAP(dwords *4) const void *src, size_t dwords)
SDL_FORCE_INLINE int | SDL_size_mul_overflow (size_t a, size_t b, size_t *ret)
SDL_FORCE_INLINE int | SDL_size_add_overflow (size_t a, size_t b, size_t *ret)

## Macro Definition Documentation

## _SDL_HAS_BUILTIN

#define _SDL_HAS_BUILTIN | ( |  | x | ) |

Value:
0

Check if the compiler supports a given builtin. Supported by virtually all clang versions and recent gcc. Use this instead of checking the clang version if possible.

Definition at line 130 of file SDL_stdinc.h.

## SDL_arraysize

#define SDL_arraysize | ( |  | array | ) |

Value:
(sizeof(array)/sizeof(array[0]))

The number of elements in an array.

Definition at line 136 of file SDL_stdinc.h.

## SDL_clamp

#define SDL_clamp | ( |  | x,
|  |  | a,
|  |  | b )

Value:
(((x) < (a)) ? (a) : (((x) > (b)) ? (b) : (x)))

Definition at line 516 of file SDL_stdinc.h.

## SDL_COMPILE_TIME_ASSERT

#define SDL_COMPILE_TIME_ASSERT | ( |  | name,
|  |  | x )

Value:
typedef int SDL_compile_time_assert_ ## name[(x) * 2 - 1]

Definition at line 406 of file SDL_stdinc.h.

#define SDL_COMPILE_TIME_ASSERT(name, x) \
typedef int SDL_compile_time_assert_ ## name[(x) * 2 - 1]

## SDL_const_cast

#define SDL_const_cast | ( |  | type,
|  |  | expression )

Value:
((type)(expression))

Definition at line 164 of file SDL_stdinc.h.

## SDL_copyp

#define SDL_copyp | ( |  | dst,
|  |  | src )

Value:
{ SDL_COMPILE_TIME_ASSERT(SDL_copyp, sizeof (*(dst)) == sizeof (*(src))); } \
SDL_memcpy((dst), (src), sizeof (*(src)))
SDL_copyp
#define SDL_copyp(dst, src)
Definition SDL_stdinc.h:543
SDL_COMPILE_TIME_ASSERT
#define SDL_COMPILE_TIME_ASSERT(name, x)
Definition SDL_stdinc.h:406

Definition at line 543 of file SDL_stdinc.h.

#define SDL_copyp(dst, src) \
{ SDL_COMPILE_TIME_ASSERT(SDL_copyp, sizeof (*(dst)) == sizeof (*(src))); } \
SDL_memcpy((dst), (src), sizeof (*(src)))

## SDL_FLT_EPSILON

#define SDL_FLT_EPSILON 1.1920928955078125e-07F /* 0x0.000002p0 */

Definition at line 260 of file SDL_stdinc.h.

Referenced by SDL_FRectEquals().

## SDL_FOURCC

#define SDL_FOURCC | ( |  | A,
|  |  | B,
|  |  | C,
|  |  | D )

Value:
((SDL_static_cast(Uint32, SDL_static_cast(Uint8, (A))) << 0) | \
(SDL_static_cast(Uint32, SDL_static_cast(Uint8, (B))) << 8) | \
(SDL_static_cast(Uint32, SDL_static_cast(Uint8, (C))) << 16) | \
(SDL_static_cast(Uint32, SDL_static_cast(Uint8, (D))) << 24))
Uint8
uint8_t Uint8
Definition SDL_stdinc.h:203
SDL_static_cast
#define SDL_static_cast(type, expression)
Definition SDL_stdinc.h:163
Uint32
uint32_t Uint32
Definition SDL_stdinc.h:231

Definition at line 169 of file SDL_stdinc.h.

#define SDL_FOURCC(A, B, C, D) \
((SDL_static_cast(Uint32, SDL_static_cast(Uint8, (A))) << 0) | \
(SDL_static_cast(Uint32, SDL_static_cast(Uint8, (B))) << 8) | \
(SDL_static_cast(Uint32, SDL_static_cast(Uint8, (C))) << 16) | \
(SDL_static_cast(Uint32, SDL_static_cast(Uint8, (D))) << 24))

## SDL_ICONV_E2BIG

#define SDL_ICONV_E2BIG (size_t)-2

Definition at line 701 of file SDL_stdinc.h.

## SDL_ICONV_EILSEQ

#define SDL_ICONV_EILSEQ (size_t)-3

Definition at line 702 of file SDL_stdinc.h.

## SDL_ICONV_EINVAL

#define SDL_ICONV_EINVAL (size_t)-4

Definition at line 703 of file SDL_stdinc.h.

## SDL_ICONV_ERROR

#define SDL_ICONV_ERROR (size_t)-1

Definition at line 700 of file SDL_stdinc.h.

## SDL_iconv_utf8_locale

#define SDL_iconv_utf8_locale | ( |  | S | ) |

Value:
SDL_iconv_string("", "UTF-8", S, SDL_strlen(S)+1)
SDL_iconv_string
char * SDL_iconv_string(const char *tocode, const char *fromcode, const char *inbuf, size_t inbytesleft)
SDL_strlen
size_t SDL_strlen(const char *str)

Definition at line 726 of file SDL_stdinc.h.

## SDL_iconv_utf8_ucs2

#define SDL_iconv_utf8_ucs2 | ( |  | S | ) |

Value:
(Uint16 *)SDL_iconv_string("UCS-2", "UTF-8", S, SDL_strlen(S)+1)
Uint16
uint16_t Uint16
Definition SDL_stdinc.h:217

Definition at line 727 of file SDL_stdinc.h.

## SDL_iconv_utf8_ucs4

#define SDL_iconv_utf8_ucs4 | ( |  | S | ) |

Value:
(Uint32 *)SDL_iconv_string("UCS-4", "UTF-8", S, SDL_strlen(S)+1)

Definition at line 728 of file SDL_stdinc.h.

## SDL_iconv_wchar_utf8

#define SDL_iconv_wchar_utf8 | ( |  | S | ) |

Value:
SDL_iconv_string("UTF-8", "WCHAR_T", (char *)S, (SDL_wcslen(S)+1)*sizeof(wchar_t))
SDL_wcslen
size_t SDL_wcslen(const wchar_t *wstr)

Definition at line 729 of file SDL_stdinc.h.

## SDL_IN_BYTECAP

#define SDL_IN_BYTECAP | ( |  | x | ) |

Definition at line 369 of file SDL_stdinc.h.

## SDL_INOUT_Z_CAP

#define SDL_INOUT_Z_CAP | ( |  | x | ) |

Definition at line 370 of file SDL_stdinc.h.

## SDL_max

#define SDL_max | ( |  | x,
|  |  | y )

Value:
(((x) > (y)) ? (x) : (y))

Definition at line 515 of file SDL_stdinc.h.

## SDL_MAX_SINT16

#define SDL_MAX_SINT16 ((Sint16)0x7FFF) /* 32767 */

Definition at line 211 of file SDL_stdinc.h.

## SDL_MAX_SINT32

#define SDL_MAX_SINT32 ((Sint32)0x7FFFFFFF) /* 2147483647 */

Definition at line 225 of file SDL_stdinc.h.

## SDL_MAX_SINT64

#define SDL_MAX_SINT64 ((Sint64)0x7FFFFFFFFFFFFFFFll) /* 9223372036854775807 */

Definition at line 239 of file SDL_stdinc.h.

## SDL_MAX_SINT8

#define SDL_MAX_SINT8 ((Sint8)0x7F) /* 127 */

Definition at line 197 of file SDL_stdinc.h.

## SDL_MAX_UINT16

#define SDL_MAX_UINT16 ((Uint16)0xFFFF) /* 65535 */

Definition at line 218 of file SDL_stdinc.h.

## SDL_MAX_UINT32

#define SDL_MAX_UINT32 ((Uint32)0xFFFFFFFFu) /* 4294967295 */

Definition at line 232 of file SDL_stdinc.h.

## SDL_MAX_UINT64

#define SDL_MAX_UINT64 ((Uint64)0xFFFFFFFFFFFFFFFFull) /* 18446744073709551615 */

Definition at line 246 of file SDL_stdinc.h.

## SDL_MAX_UINT8

#define SDL_MAX_UINT8 ((Uint8)0xFF) /* 255 */

Definition at line 204 of file SDL_stdinc.h.

## SDL_min

#define SDL_min | ( |  | x,
|  |  | y )

Value:
(((x) < (y)) ? (x) : (y))

Definition at line 514 of file SDL_stdinc.h.

## SDL_MIN_SINT16

#define SDL_MIN_SINT16 ((Sint16)(~0x7FFF)) /* -32768 */

Definition at line 212 of file SDL_stdinc.h.

## SDL_MIN_SINT32

#define SDL_MIN_SINT32 ((Sint32)(~0x7FFFFFFF)) /* -2147483648 */

Definition at line 226 of file SDL_stdinc.h.

## SDL_MIN_SINT64

#define SDL_MIN_SINT64 ((Sint64)(~0x7FFFFFFFFFFFFFFFll)) /* -9223372036854775808 */

Definition at line 240 of file SDL_stdinc.h.

## SDL_MIN_SINT8

#define SDL_MIN_SINT8 ((Sint8)(~0x7F)) /* -128 */

Definition at line 198 of file SDL_stdinc.h.

## SDL_MIN_UINT16

#define SDL_MIN_UINT16 ((Uint16)0x0000) /* 0 */

Definition at line 219 of file SDL_stdinc.h.

## SDL_MIN_UINT32

#define SDL_MIN_UINT32 ((Uint32)0x00000000) /* 0 */

Definition at line 233 of file SDL_stdinc.h.

## SDL_MIN_UINT64

#define SDL_MIN_UINT64 ((Uint64)(0x0000000000000000ull)) /* 0 */

Definition at line 247 of file SDL_stdinc.h.

## SDL_MIN_UINT8

#define SDL_MIN_UINT8 ((Uint8)0x00) /* 0 */

Definition at line 205 of file SDL_stdinc.h.

## SDL_OUT_BYTECAP

#define SDL_OUT_BYTECAP | ( |  | x | ) |

Definition at line 373 of file SDL_stdinc.h.

## SDL_OUT_CAP

#define SDL_OUT_CAP | ( |  | x | ) |

Definition at line 372 of file SDL_stdinc.h.

## SDL_OUT_Z_BYTECAP

#define SDL_OUT_Z_BYTECAP | ( |  | x | ) |

Definition at line 374 of file SDL_stdinc.h.

## SDL_OUT_Z_CAP

#define SDL_OUT_Z_CAP | ( |  | x | ) |

Definition at line 371 of file SDL_stdinc.h.

Referenced by SDL_snprintf(), and SDL_vsnprintf().

## SDL_PRINTF_FORMAT_STRING

#define SDL_PRINTF_FORMAT_STRING

Definition at line 375 of file SDL_stdinc.h.

Referenced by SDL_asprintf(), SDL_Log(), SDL_LogCritical(), SDL_LogDebug(), SDL_LogError(), SDL_LogInfo(), SDL_LogMessage(), SDL_LogMessageV(), SDL_LogVerbose(), SDL_LogWarn(), SDL_SetError(), SDL_snprintf(), SDL_vasprintf(), SDL_vsnprintf(), SDLTest_Assert(), SDLTest_AssertCheck(), SDLTest_AssertPass(), SDLTest_Log(), SDLTest_LogError(), and SDLTest_TextWindowAddText().

## SDL_PRINTF_VARARG_FUNC

#define SDL_PRINTF_VARARG_FUNC | ( |  | fmtargnumber | ) |

Definition at line 384 of file SDL_stdinc.h.

Referenced by SDL_asprintf(), SDL_Log(), SDL_LogCritical(), SDL_LogDebug(), SDL_LogError(), SDL_LogInfo(), SDL_LogMessage(), SDL_LogVerbose(), SDL_LogWarn(), SDL_SetError(), SDL_snprintf(), SDLTest_Assert(), SDLTest_AssertCheck(), SDLTest_AssertPass(), SDLTest_Log(), SDLTest_LogError(), and SDLTest_TextWindowAddText().

## SDL_PRINTF_VARARG_FUNCV

#define SDL_PRINTF_VARARG_FUNCV | ( |  | fmtargnumber | ) |

Definition at line 385 of file SDL_stdinc.h.

Referenced by SDL_LogMessageV(), SDL_vasprintf(), and SDL_vsnprintf().

## SDL_PRIs32

#define SDL_PRIs32 "d"

Definition at line 316 of file SDL_stdinc.h.

## SDL_PRIs64

#define SDL_PRIs64 "I64d"

Definition at line 270 of file SDL_stdinc.h.

## SDL_PRIu32

#define SDL_PRIu32 "u"

Definition at line 323 of file SDL_stdinc.h.

## SDL_PRIu64

#define SDL_PRIu64 "I64u"

Definition at line 281 of file SDL_stdinc.h.

## SDL_PRIX32

#define SDL_PRIX32 "X"

Definition at line 337 of file SDL_stdinc.h.

## SDL_PRIx32

#define SDL_PRIx32 "x"

Definition at line 330 of file SDL_stdinc.h.

## SDL_PRIX64

#define SDL_PRIX64 "I64X"

Definition at line 303 of file SDL_stdinc.h.

## SDL_PRIx64

#define SDL_PRIx64 "I64x"

Definition at line 292 of file SDL_stdinc.h.

## SDL_reinterpret_cast

#define SDL_reinterpret_cast | ( |  | type,
|  |  | expression )

Value:
((type)(expression))

Definition at line 162 of file SDL_stdinc.h.

## SDL_SCANF_FORMAT_STRING

#define SDL_SCANF_FORMAT_STRING

Definition at line 376 of file SDL_stdinc.h.

Referenced by SDL_sscanf(), and SDL_vsscanf().

## SDL_SCANF_VARARG_FUNC

#define SDL_SCANF_VARARG_FUNC | ( |  | fmtargnumber | ) |

Definition at line 386 of file SDL_stdinc.h.

Referenced by SDL_sscanf().

## SDL_SCANF_VARARG_FUNCV

#define SDL_SCANF_VARARG_FUNCV | ( |  | fmtargnumber | ) |

Definition at line 387 of file SDL_stdinc.h.

Referenced by SDL_vsscanf().

## SDL_SIZE_MAX

#define SDL_SIZE_MAX ((size_t) -1)

# CategoryStdInc

This is a general header that includes C language support.

Definition at line 119 of file SDL_stdinc.h.

Referenced by SDL_size_add_overflow(), and SDL_size_mul_overflow().

## SDL_stack_alloc

#define SDL_stack_alloc | ( |  | type,
|  |  | count )

Value:
(type*)alloca(sizeof(type)*(count))

Definition at line 450 of file SDL_stdinc.h.

## SDL_stack_free

#define SDL_stack_free | ( |  | data | ) |

Definition at line 451 of file SDL_stdinc.h.

## SDL_static_cast

#define SDL_static_cast | ( |  | type,
|  |  | expression )

Value:
((type)(expression))

Definition at line 163 of file SDL_stdinc.h.

Referenced by SDL_memset4(), SDL_Swap16(), SDL_Swap32(), and SDL_Swap64().

## SDL_STRINGIFY_ARG

#define SDL_STRINGIFY_ARG | ( |  | arg | ) |

Value:
#arg

Macro useful for building other macros with strings in them

e.g:

#define LOG_ERROR(X) OutputDebugString(SDL_STRINGIFY_ARG(__FUNCTION__) ": " X "\n")

Definition at line 148 of file SDL_stdinc.h.

## SDL_TABLESIZE

#define SDL_TABLESIZE | ( |  | table | ) |

Value:
SDL_arraysize(table)
SDL_arraysize
#define SDL_arraysize(array)
Definition SDL_stdinc.h:136

Definition at line 137 of file SDL_stdinc.h.

## SDL_zero

#define SDL_zero | ( |  | x | ) |

Value:
SDL_memset(&(x), 0, sizeof((x)))
SDL_memset
void * SDL_memset(SDL_OUT_BYTECAP(len) void *dst, int c, size_t len)

Definition at line 539 of file SDL_stdinc.h.

## SDL_zeroa

#define SDL_zeroa | ( |  | x | ) |

Value:
SDL_memset((x), 0, sizeof((x)))

Definition at line 541 of file SDL_stdinc.h.

## SDL_zerop

#define SDL_zerop | ( |  | x | ) |

Value:
SDL_memset((x), 0, sizeof(*(x)))

Definition at line 540 of file SDL_stdinc.h.

## Typedef Documentation

## SDL_calloc_func

typedef void *(* SDL_calloc_func) (size_t nmemb, size_t size)

Definition at line 463 of file SDL_stdinc.h.

## SDL_CompareCallback

typedef int(* SDL_CompareCallback) (const void *, const void *)

Definition at line 507 of file SDL_stdinc.h.

## SDL_free_func

typedef void(* SDL_free_func) (void *mem)

Definition at line 465 of file SDL_stdinc.h.

## SDL_iconv_t

typedef struct _SDL_iconv_t* SDL_iconv_t

Definition at line 706 of file SDL_stdinc.h.

## SDL_malloc_func

typedef void *(* SDL_malloc_func) (size_t size)

Definition at line 462 of file SDL_stdinc.h.

## SDL_realloc_func

typedef void *(* SDL_realloc_func) (void *mem, size_t size)

Definition at line 464 of file SDL_stdinc.h.

## Sint16

typedef int16_t Sint16

A signed 16-bit integer type.

Definition at line 210 of file SDL_stdinc.h.

## Sint32

typedef int32_t Sint32

A signed 32-bit integer type.

Definition at line 224 of file SDL_stdinc.h.

## Sint64

typedef int64_t Sint64

A signed 64-bit integer type.

Definition at line 238 of file SDL_stdinc.h.

## Sint8

typedef int8_t Sint8

A signed 8-bit integer type.

Definition at line 196 of file SDL_stdinc.h.

## Uint16

typedef uint16_t Uint16

An unsigned 16-bit integer type.

Definition at line 217 of file SDL_stdinc.h.

## Uint32

typedef uint32_t Uint32

An unsigned 32-bit integer type.

Definition at line 231 of file SDL_stdinc.h.

## Uint64

typedef uint64_t Uint64

An unsigned 64-bit integer type.

Definition at line 245 of file SDL_stdinc.h.

## Uint8

typedef uint8_t Uint8

An unsigned 8-bit integer type.

Definition at line 203 of file SDL_stdinc.h.

## Enumeration Type Documentation

## SDL_bool

enum SDL_bool

Enumerator
SDL_FALSE |
SDL_TRUE |

Definition at line 186 of file SDL_stdinc.h.

{
SDL_FALSE = 0,
SDL_TRUE = 1
} SDL_bool;
SDL_bool
SDL_bool
Definition SDL_stdinc.h:187
SDL_TRUE
@ SDL_TRUE
Definition SDL_stdinc.h:189
SDL_FALSE
@ SDL_FALSE
Definition SDL_stdinc.h:188

## Function Documentation

## SDL_abs()

int SDL_abs | ( | int | x | ) |

extern

## SDL_acos()

double SDL_acos | ( | double | x | ) |

extern

Use this function to compute arc cosine of x.

The definition of y = acos(x) is x = cos(y).

Domain: -1 <= x <= 1

Range: 0 <= y <= Pi

Parameters

  x | floating point value, in radians.

Returns
  arc cosine of x.

Since
  This function is available since SDL 2.0.2.

## SDL_acosf()

float SDL_acosf | ( | float | x | ) |

extern

## SDL_asin()

double SDL_asin | ( | double | x | ) |

extern

## SDL_asinf()

float SDL_asinf | ( | float | x | ) |

extern

## SDL_asprintf()

int SDL_asprintf | ( | char ** | strp,
|  | SDL_PRINTF_FORMAT_STRING const char * | fmt,
|  |  | ... )

extern

References SDL_asprintf(), SDL_PRINTF_FORMAT_STRING, and SDL_PRINTF_VARARG_FUNC.

Referenced by SDL_asprintf().

## SDL_atan()

double SDL_atan | ( | double | x | ) |

extern

## SDL_atan2()

double SDL_atan2 | ( | double | y,
|  | double | x )

extern

## SDL_atan2f()

float SDL_atan2f | ( | float | y,
|  | float | x )

extern

## SDL_atanf()

float SDL_atanf | ( | float | x | ) |

extern

## SDL_atof()

double SDL_atof | ( | const char * | str | ) |

extern

## SDL_atoi()

int SDL_atoi | ( | const char * | str | ) |

extern

## SDL_bsearch()

void * SDL_bsearch | ( | const void * | key,
|  | const void * | base,
|  | size_t | nmemb,
|  | size_t | size,
|  | SDL_CompareCallback | compare )

extern

## SDL_calloc()

void * SDL_calloc | ( | size_t | nmemb,
|  | size_t | size )

extern

## SDL_ceil()

double SDL_ceil | ( | double | x | ) |

extern

## SDL_ceilf()

float SDL_ceilf | ( | float | x | ) |

extern

## SDL_copysign()

double SDL_copysign | ( | double | x,
|  | double | y )

extern

## SDL_copysignf()

float SDL_copysignf | ( | float | x,
|  | float | y )

extern

## SDL_cos()

double SDL_cos | ( | double | x | ) |

extern

## SDL_cosf()

float SDL_cosf | ( | float | x | ) |

extern

## SDL_crc16()

Uint16 SDL_crc16 | ( | Uint16 | crc,
|  | const void * | data,
|  | size_t | len )

extern

## SDL_crc32()

Uint32 SDL_crc32 | ( | Uint32 | crc,
|  | const void * | data,
|  | size_t | len )

extern

## SDL_exp()

double SDL_exp | ( | double | x | ) |

extern

## SDL_expf()

float SDL_expf | ( | float | x | ) |

extern

## SDL_fabs()

double SDL_fabs | ( | double | x | ) |

extern

## SDL_fabsf()

float SDL_fabsf | ( | float | x | ) |

extern

Referenced by SDL_FRectEqualsEpsilon().

## SDL_floor()

double SDL_floor | ( | double | x | ) |

extern

## SDL_floorf()

float SDL_floorf | ( | float | x | ) |

extern

## SDL_fmod()

double SDL_fmod | ( | double | x,
|  | double | y )

extern

## SDL_fmodf()

float SDL_fmodf | ( | float | x,
|  | float | y )

extern

## SDL_free()

void SDL_free | ( | void * | mem | ) |

extern

## SDL_getenv()

char * SDL_getenv | ( | const char * | name | ) |

extern

## SDL_GetMemoryFunctions()

void SDL_GetMemoryFunctions | ( | SDL_malloc_func * | malloc_func,
|  | SDL_calloc_func * | calloc_func,
|  | SDL_realloc_func * | realloc_func,
|  | SDL_free_func * | free_func )

extern

Get the current set of SDL memory functions

Since
  This function is available since SDL 2.0.7.

## SDL_GetNumAllocations()

int SDL_GetNumAllocations | ( | void |  | ) |

extern

Get the number of outstanding (unfreed) allocations

Since
  This function is available since SDL 2.0.7.

## SDL_GetOriginalMemoryFunctions()

void SDL_GetOriginalMemoryFunctions | ( | SDL_malloc_func * | malloc_func,
|  | SDL_calloc_func * | calloc_func,
|  | SDL_realloc_func * | realloc_func,
|  | SDL_free_func * | free_func )

extern

Get the original set of SDL memory functions

Since
  This function is available since SDL 2.24.0.

## SDL_iconv()

size_t SDL_iconv | ( | SDL_iconv_t | cd,
|  | const char ** | inbuf,
|  | size_t * | inbytesleft,
|  | char ** | outbuf,
|  | size_t * | outbytesleft )

extern

## SDL_iconv_close()

int SDL_iconv_close | ( | SDL_iconv_t | cd | ) |

extern

## SDL_iconv_open()

SDL_iconv_t SDL_iconv_open | ( | const char * | tocode,
|  | const char * | fromcode )

extern

## SDL_iconv_string()

char * SDL_iconv_string | ( | const char * | tocode,
|  | const char * | fromcode,
|  | const char * | inbuf,
|  | size_t | inbytesleft )

extern

This function converts a buffer or string between encodings in one pass, returning a string that must be freed with SDL_free() or NULL on error.

Since
  This function is available since SDL 2.0.0.

## SDL_isalnum()

int SDL_isalnum | ( | int | x | ) |

extern

## SDL_isalpha()

int SDL_isalpha | ( | int | x | ) |

extern

## SDL_isblank()

int SDL_isblank | ( | int | x | ) |

extern

## SDL_iscntrl()

int SDL_iscntrl | ( | int | x | ) |

extern

## SDL_isdigit()

int SDL_isdigit | ( | int | x | ) |

extern

## SDL_isgraph()

int SDL_isgraph | ( | int | x | ) |

extern

## SDL_islower()

int SDL_islower | ( | int | x | ) |

extern

## SDL_isprint()

int SDL_isprint | ( | int | x | ) |

extern

## SDL_ispunct()

int SDL_ispunct | ( | int | x | ) |

extern

## SDL_isspace()

int SDL_isspace | ( | int | x | ) |

extern

## SDL_isupper()

int SDL_isupper | ( | int | x | ) |

extern

## SDL_isxdigit()

int SDL_isxdigit | ( | int | x | ) |

extern

## SDL_itoa()

char * SDL_itoa | ( | int | value,
|  | char * | str,
|  | int | radix )

extern

## SDL_lltoa()

char * SDL_lltoa | ( | Sint64 | value,
|  | char * | str,
|  | int | radix )

extern

## SDL_log()

double SDL_log | ( | double | x | ) |

extern

## SDL_log10()

double SDL_log10 | ( | double | x | ) |

extern

## SDL_log10f()

float SDL_log10f | ( | float | x | ) |

extern

## SDL_logf()

float SDL_logf | ( | float | x | ) |

extern

## SDL_lround()

long SDL_lround | ( | double | x | ) |

extern

## SDL_lroundf()

long SDL_lroundf | ( | float | x | ) |

extern

## SDL_ltoa()

char * SDL_ltoa | ( | long | value,
|  | char * | str,
|  | int | radix )

extern

## SDL_malloc()

void * SDL_malloc | ( | size_t | size | ) |

extern

## SDL_memcmp()

int SDL_memcmp | ( | const void * | s1,
|  | const void * | s2,
|  | size_t | len )

extern

## SDL_memcpy()

void * SDL_memcpy | ( | SDL_OUT_BYTECAP(len) void * | dst,
|  | SDL_IN_BYTECAP(len) const void * | src,
|  | size_t | len )

extern

Referenced by SDL_memcpy4().

## SDL_memcpy4()

SDL_FORCE_INLINE void * SDL_memcpy4 | ( | SDL_OUT_BYTECAP(dwords *4) void * | dst,
|  | SDL_IN_BYTECAP(dwords *4) const void * | src,
|  | size_t | dwords )

Definition at line 799 of file SDL_stdinc.h.

{
return SDL_memcpy(dst, src, dwords * 4);
}
SDL_memcpy
void * SDL_memcpy(SDL_OUT_BYTECAP(len) void *dst, SDL_IN_BYTECAP(len) const void *src, size_t len)

References SDL_FORCE_INLINE, and SDL_memcpy().

## SDL_memmove()

void * SDL_memmove | ( | SDL_OUT_BYTECAP(len) void * | dst,
|  | SDL_IN_BYTECAP(len) const void * | src,
|  | size_t | len )

extern

## SDL_memset()

void * SDL_memset | ( | SDL_OUT_BYTECAP(len) void * | dst,
|  | int | c,
|  | size_t | len )

extern

## SDL_memset4()

SDL_FORCE_INLINE void SDL_memset4 | ( | void * | dst,
|  | Uint32 | val,
|  | size_t | dwords )

Definition at line 549 of file SDL_stdinc.h.

{
#if defined(__GNUC__) && defined(__i386__)
int u0, u1, u2;
__asm__ __volatile__ (
"cld \n\t"
"rep ; stosl \n\t"
: "=&D" (u0), "=&a" (u1), "=&c" (u2)
: "0" (dst), "1" (val), "2" (SDL_static_cast(Uint32, dwords))
: "memory"
);
#else
size_t _n = (dwords + 3) / 4;
Uint32 *_p = SDL_static_cast(Uint32 *, dst);
Uint32 _val = (val);
if (dwords == 0) {
return;
}
switch (dwords % 4) {
case 0: do { *_p++ = _val; SDL_FALLTHROUGH;
case 3: *_p++ = _val; SDL_FALLTHROUGH;
case 2: *_p++ = _val; SDL_FALLTHROUGH;
case 1: *_p++ = _val;
} while ( --_n );
}
#endif
}
SDL_FALLTHROUGH
#define SDL_FALLTHROUGH
Definition begin_code.h:185

References SDL_FALLTHROUGH, SDL_FORCE_INLINE, and SDL_static_cast.

## SDL_pow()

double SDL_pow | ( | double | x,
|  | double | y )

extern

## SDL_powf()

float SDL_powf | ( | float | x,
|  | float | y )

extern

## SDL_qsort()

void SDL_qsort | ( | void * | base,
|  | size_t | nmemb,
|  | size_t | size,
|  | SDL_CompareCallback | compare )

extern

## SDL_realloc()

void * SDL_realloc | ( | void * | mem,
|  | size_t | size )

extern

## SDL_round()

double SDL_round | ( | double | x | ) |

extern

## SDL_roundf()

float SDL_roundf | ( | float | x | ) |

extern

## SDL_scalbn()

double SDL_scalbn | ( | double | x,
|  | int | n )

extern

## SDL_scalbnf()

float SDL_scalbnf | ( | float | x,
|  | int | n )

extern

## SDL_setenv()

int SDL_setenv | ( | const char * | name,
|  | const char * | value,
|  | int | overwrite )

extern

## SDL_SetMemoryFunctions()

int SDL_SetMemoryFunctions | ( | SDL_malloc_func | malloc_func,
|  | SDL_calloc_func | calloc_func,
|  | SDL_realloc_func | realloc_func,
|  | SDL_free_func | free_func )

extern

Replace SDL's memory allocation functions with a custom set

Since
  This function is available since SDL 2.0.7.

## SDL_sin()

double SDL_sin | ( | double | x | ) |

extern

## SDL_sinf()

float SDL_sinf | ( | float | x | ) |

extern

## SDL_size_add_overflow()

SDL_FORCE_INLINE int SDL_size_add_overflow | ( | size_t | a,
|  | size_t | b,
|  | size_t * | ret )

If a + b would overflow, return -1.

Otherwise store a + b via ret and return 0.

Since
  This function is available since SDL 2.24.0.

Definition at line 842 of file SDL_stdinc.h.

{
if (b > SDL_SIZE_MAX - a) {
return -1;
}
*ret = a + b;
return 0;
}
SDL_SIZE_MAX
#define SDL_SIZE_MAX
Definition SDL_stdinc.h:119

References SDL_FORCE_INLINE, and SDL_SIZE_MAX.

## SDL_size_mul_overflow()

SDL_FORCE_INLINE int SDL_size_mul_overflow | ( | size_t | a,
|  | size_t | b,
|  | size_t * | ret )

If a * b would overflow, return -1.

Otherwise store a * b via ret and return 0.

Since
  This function is available since SDL 2.24.0.

Definition at line 811 of file SDL_stdinc.h.

{
if (a != 0 && b > SDL_SIZE_MAX / a) {
return -1;
}
*ret = a * b;
return 0;
}

References SDL_FORCE_INLINE, and SDL_SIZE_MAX.

## SDL_snprintf()

int SDL_snprintf | ( | SDL_OUT_Z_CAP(maxlen) char * | text,
|  | size_t | maxlen,
|  | SDL_PRINTF_FORMAT_STRING const char * | fmt,
|  |  | ... )

extern

References SDL_OUT_Z_CAP, SDL_PRINTF_FORMAT_STRING, SDL_PRINTF_VARARG_FUNC, and SDL_snprintf().

Referenced by SDL_snprintf().

## SDL_sqrt()

double SDL_sqrt | ( | double | x | ) |

extern

## SDL_sqrtf()

float SDL_sqrtf | ( | float | x | ) |

extern

## SDL_sscanf()

int SDL_sscanf | ( | const char * | text,
|  | SDL_SCANF_FORMAT_STRING const char * | fmt,
|  |  | ... )

extern

References SDL_SCANF_FORMAT_STRING, and SDL_SCANF_VARARG_FUNC.

## SDL_strcasecmp()

int SDL_strcasecmp | ( | const char * | str1,
|  | const char * | str2 )

extern

## SDL_strcasestr()

char * SDL_strcasestr | ( | const char * | haystack,
|  | const char * | needle )

extern

## SDL_strchr()

char * SDL_strchr | ( | const char * | str,
|  | int | c )

extern

## SDL_strcmp()

int SDL_strcmp | ( | const char * | str1,
|  | const char * | str2 )

extern

## SDL_strdup()

char * SDL_strdup | ( | const char * | str | ) |

extern

## SDL_strlcat()

size_t SDL_strlcat | ( | SDL_INOUT_Z_CAP(maxlen) char * | dst,
|  | const char * | src,
|  | size_t | maxlen )

extern

## SDL_strlcpy()

size_t SDL_strlcpy | ( | SDL_OUT_Z_CAP(maxlen) char * | dst,
|  | const char * | src,
|  | size_t | maxlen )

extern

## SDL_strlen()

size_t SDL_strlen | ( | const char * | str | ) |

extern

## SDL_strlwr()

char * SDL_strlwr | ( | char * | str | ) |

extern

## SDL_strncasecmp()

int SDL_strncasecmp | ( | const char * | str1,
|  | const char * | str2,
|  | size_t | len )

extern

## SDL_strncmp()

int SDL_strncmp | ( | const char * | str1,
|  | const char * | str2,
|  | size_t | maxlen )

extern

## SDL_strrchr()

char * SDL_strrchr | ( | const char * | str,
|  | int | c )

extern

## SDL_strrev()

char * SDL_strrev | ( | char * | str | ) |

extern

## SDL_strstr()

char * SDL_strstr | ( | const char * | haystack,
|  | const char * | needle )

extern

## SDL_strtod()

double SDL_strtod | ( | const char * | str,
|  | char ** | endp )

extern

## SDL_strtokr()

char * SDL_strtokr | ( | char * | s1,
|  | const char * | s2,
|  | char ** | saveptr )

extern

## SDL_strtol()

long SDL_strtol | ( | const char * | str,
|  | char ** | endp,
|  | int | base )

extern

## SDL_strtoll()

Sint64 SDL_strtoll | ( | const char * | str,
|  | char ** | endp,
|  | int | base )

extern

## SDL_strtoul()

unsigned long SDL_strtoul | ( | const char * | str,
|  | char ** | endp,
|  | int | base )

extern

## SDL_strtoull()

Uint64 SDL_strtoull | ( | const char * | str,
|  | char ** | endp,
|  | int | base )

extern

## SDL_strupr()

char * SDL_strupr | ( | char * | str | ) |

extern

## SDL_tan()

double SDL_tan | ( | double | x | ) |

extern

## SDL_tanf()

float SDL_tanf | ( | float | x | ) |

extern

## SDL_tolower()

int SDL_tolower | ( | int | x | ) |

extern

## SDL_toupper()

int SDL_toupper | ( | int | x | ) |

extern

## SDL_trunc()

double SDL_trunc | ( | double | x | ) |

extern

## SDL_truncf()

float SDL_truncf | ( | float | x | ) |

extern

## SDL_uitoa()

char * SDL_uitoa | ( | unsigned int | value,
|  | char * | str,
|  | int | radix )

extern

## SDL_ulltoa()

char * SDL_ulltoa | ( | Uint64 | value,
|  | char * | str,
|  | int | radix )

extern

## SDL_ultoa()

char * SDL_ultoa | ( | unsigned long | value,
|  | char * | str,
|  | int | radix )

extern

## SDL_utf8strlcpy()

size_t SDL_utf8strlcpy | ( | SDL_OUT_Z_CAP(dst_bytes) char * | dst,
|  | const char * | src,
|  | size_t | dst_bytes )

extern

## SDL_utf8strlen()

size_t SDL_utf8strlen | ( | const char * | str | ) |

extern

## SDL_utf8strnlen()

size_t SDL_utf8strnlen | ( | const char * | str,
|  | size_t | bytes )

extern

## SDL_vasprintf()

int SDL_vasprintf | ( | char ** | strp,
|  | SDL_PRINTF_FORMAT_STRING const char * | fmt,
|  | va_list | ap )

extern

References SDL_PRINTF_FORMAT_STRING, SDL_PRINTF_VARARG_FUNCV, and SDL_vasprintf().

Referenced by SDL_vasprintf().

## SDL_vsnprintf()

int SDL_vsnprintf | ( | SDL_OUT_Z_CAP(maxlen) char * | text,
|  | size_t | maxlen,
|  | SDL_PRINTF_FORMAT_STRING const char * | fmt,
|  | va_list | ap )

extern

References SDL_OUT_Z_CAP, SDL_PRINTF_FORMAT_STRING, SDL_PRINTF_VARARG_FUNCV, and SDL_vsnprintf().

Referenced by SDL_vsnprintf().

## SDL_vsscanf()

int SDL_vsscanf | ( | const char * | text,
|  | SDL_SCANF_FORMAT_STRING const char * | fmt,
|  | va_list | ap )

extern

References SDL_SCANF_FORMAT_STRING, SDL_SCANF_VARARG_FUNCV, and SDL_vsscanf().

Referenced by SDL_vsscanf().

## SDL_wcscasecmp()

int SDL_wcscasecmp | ( | const wchar_t * | str1,
|  | const wchar_t * | str2 )

extern

## SDL_wcscmp()

int SDL_wcscmp | ( | const wchar_t * | str1,
|  | const wchar_t * | str2 )

extern

## SDL_wcsdup()

wchar_t * SDL_wcsdup | ( | const wchar_t * | wstr | ) |

extern

## SDL_wcslcat()

size_t SDL_wcslcat | ( | SDL_INOUT_Z_CAP(maxlen) wchar_t * | dst,
|  | const wchar_t * | src,
|  | size_t | maxlen )

extern

## SDL_wcslcpy()

size_t SDL_wcslcpy | ( | SDL_OUT_Z_CAP(maxlen) wchar_t * | dst,
|  | const wchar_t * | src,
|  | size_t | maxlen )

extern

## SDL_wcslen()

size_t SDL_wcslen | ( | const wchar_t * | wstr | ) |

extern

## SDL_wcsncasecmp()

int SDL_wcsncasecmp | ( | const wchar_t * | str1,
|  | const wchar_t * | str2,
|  | size_t | len )

extern

## SDL_wcsncmp()

int SDL_wcsncmp | ( | const wchar_t * | str1,
|  | const wchar_t * | str2,
|  | size_t | maxlen )

extern

## SDL_wcsstr()

wchar_t * SDL_wcsstr | ( | const wchar_t * | haystack,
|  | const wchar_t * | needle )

extern