Embedded Artistry libc
C Standard Library Support for Bare-metal Systems
|
Go to the source code of this file.
Classes | |
struct | div_t |
Division type for integers. More... | |
struct | ldiv_t |
Division type for long integers. More... | |
struct | lldiv_t |
Division type for long long integers. More... | |
struct | imaxdiv_t |
Division type for maximal integer storage. More... | |
Macros | |
#define | EXIT_FAILURE 1 |
#define | EXIT_SUCCESS 0 |
#define | RAND_MAX (0x7fffffff) |
#define | MB_CUR_MAX sizeof(wchar_t) |
Functions | |
void | abort (void) __attribute__((noreturn)) |
int | atexit (void(*)(void)) |
void | exit (int) __attribute__((noreturn)) |
void | _Exit (int) __attribute__((noreturn)) |
int | at_quick_exit (void(*)(void)) |
void | quick_exit (int) __attribute__((noreturn)) |
int | cxa_atexit (void(*)(void *), void *, void *) |
char * | getenv (const char *) |
int | system (const char *) |
int | mblen (const char *, size_t) |
int | mbtowc (wchar_t *__restrict, const char *__restrict, size_t) |
int | wctomb (char *, wchar_t) |
size_t | mbstowcs (wchar_t *__restrict, const char *__restrict, size_t) |
size_t | wcstombs (char *__restrict, const wchar_t *__restrict, size_t) |
int | atoi (const char *str) |
Interprets an integer value in a byte string pointed to by str. More... | |
long | atol (const char *str) |
Interprets a Long value in a byte string pointed to by str. More... | |
long long | atoll (const char *str) |
Interprets a Long Long value in a byte string pointed to by str. More... | |
double | atof (const char *str) |
Interprets a floating-point value in a byte string pointed to by str. More... | |
float | strtof (const char *__restrict str, char **__restrict str_end) |
Interprets a floating-point value in a byte string pointed to by str. More... | |
double | strtod (const char *__restrict str, char **__restrict str_end) |
Interprets a floating-point value in a byte string pointed to by str. More... | |
long | strtol (const char *__restrict str, char **__restrict str_end, int base) |
Interprets an long value in a byte string pointed to by str. More... | |
unsigned long | strtoul (const char *__restrict str, char **__restrict str_end, int base) |
Interprets an unsigned long value in a byte string pointed to by str. More... | |
long long | strtoll (const char *__restrict str, char **__restrict str_end, int base) |
Interprets an long long value in a byte string pointed to by str. More... | |
unsigned long long | strtoull (const char *__restrict str, char **__restrict str_end, int base) |
Interprets an unsigned long long value in a byte string pointed to by str. More... | |
long double | strtold (const char *__restrict, char **__restrict) |
int | abs (int n) |
Computes the absolute value of an integer number. More... | |
long | labs (long n) |
Computes the absolute value of an long number. More... | |
long long | llabs (long long n) |
Computes the absolute value of an long long number. More... | |
intmax_t | imaxabs (intmax_t j) |
Computes the absolute value of an intmax_t number. More... | |
div_t | div (int x, int y) |
Computes both the quotient and the remainder of the division of the numerator x by the denominator y. More... | |
ldiv_t | ldiv (long x, long y) |
Computes both the quotient and the remainder of the division of the numerator x by the denominator y. More... | |
lldiv_t | lldiv (long long x, long long y) |
Computes both the quotient and the remainder of the division of the numerator x by the denominator y. More... | |
imaxdiv_t | imaxdiv (intmax_t numer, intmax_t denom) |
Computes both the quotient and the remainder of the division of the numerator x by the denominator y. More... | |
int | rand_r (unsigned int *ctx) |
int | rand (void) |
Returns a pseudo-random integer value between 0 and. More... | |
void | srand (unsigned seed) |
Seeds the pseudo-random number generator used by. More... | |
int | heapsort (void *vbase, size_t nmemb, size_t size, int(*compar)(const void *, const void *)) |
Sorts the given array pointed to by vbase in ascending order. More... | |
int | heapsort_r (void *vbase, size_t nmemb, size_t size, void *thunk, int(*compar)(void *, const void *, const void *)) |
Sorts the given array pointed to by vbase in ascending order. More... | |
void * | bsearch (const void *key, const void *ptr, size_t count, size_t size, int(*comp)(const void *, const void *)) |
Finds an element equal to element pointed to by key in an array pointed to by ptr. More... | |
void | qsort_r (void *a, size_t n, size_t es, void *thunk, int(*cmp)(void *, const void *, const void *)) |
Sorts the given array pointed to by ptr in ascending order. More... | |
void | qsort (void *a, size_t n, size_t es, int(*compar)(const void *, const void *)) |
Sorts the given array pointed to by ptr in ascending order. More... | |
void * | malloc (size_t size) |
Allocates size bytes of uninitialized storage. More... | |
void | free (void *ptr) |
Deallocates allocated memory space. More... | |
void * | calloc (size_t num, size_t size) |
Allocates memory for an array of given number objects of size and initializes all bytes in the allocated storage to zero. More... | |
void * | realloc (void *ptr, size_t size) |
Reallocates the given area of memory. More... | |
void * | reallocf (void *ptr, size_t size) |
Reallocates the given area of memory. More... | |
struct div_t |
struct ldiv_t |
struct lldiv_t |
struct imaxdiv_t |
#define EXIT_FAILURE 1 |
#define EXIT_SUCCESS 0 |
#define MB_CUR_MAX sizeof(wchar_t) |
#define RAND_MAX (0x7fffffff) |
void _Exit | ( | int | ) |
TODO: CLEANUP DOC Terminates the process normally by returning control to the host environment, but without performing any of the regular cleanup tasks for terminating processes (as function exit does). No object destructors, nor functions registered by atexit or at_quick_exit are called
Referenced by __attribute__().
void abort | ( | void | ) |
Referenced by __attribute__().
int abs | ( | int | n | ) |
Computes the absolute value of an integer number.
Computes the absolute value of an integer number. The behavior is undefined if the result cannot be represented by the return type.
n | integer value |
int at_quick_exit | ( | void(*)(void) | ) |
int atexit | ( | void(*)(void) | ) |
double atof | ( | const char * | str | ) |
Interprets a floating-point value in a byte string pointed to by str.
Interprets a floating-point value in a byte string pointed to by str. Function discards any whitespace characters (as determined by
str | pointer to the null-terminated byte string to be interpreted |
Definition at line 57 of file atof.c.
int atoi | ( | const char * | str | ) |
Interprets an integer value in a byte string pointed to by str.
Interprets an integer value in a byte string pointed to by str. Discards any whitespace characters until the first non-whitespace character is found, then takes as many characters as possible to form a valid integer number representation and converts them to an integer value. The valid integer value consists of the following parts: a) (optional) plus or minus sign b) numeric digits
str | pointer to the null-terminated byte string to be interpreted |
Definition at line 5 of file atoi.c.
References isdigit().
long atol | ( | const char * | str | ) |
Interprets a Long value in a byte string pointed to by str.
Interprets a Long value in a byte string pointed to by str. Discards any whitespace characters until the first non-whitespace character is found, then takes as many characters as possible to form a valid long number representation and converts them to an long value. The valid Long value consists of the following parts: a) (optional) plus or minus sign b) numeric digits
str | pointer to the null-terminated byte string to be interpreted |
Definition at line 5 of file atol.c.
long long atoll | ( | const char * | str | ) |
Interprets a Long Long value in a byte string pointed to by str.
Interprets a Long Long value in a byte string pointed to by str. Discards any whitespace characters until the first non-whitespace character is found, then takes as many characters as possible to form a valid long number representation and converts them to an long long value. The valid Long long value consists of the following parts: a) (optional) plus or minus sign b) numeric digits
str | pointer to the null-terminated byte string to be interpreted |
Definition at line 5 of file atoll.c.
void* bsearch | ( | const void * | key, |
const void * | ptr, | ||
size_t | count, | ||
size_t | size, | ||
int(*)(const void *, const void *) | comp | ||
) |
Finds an element equal to element pointed to by key in an array pointed to by ptr.
key | pointer to the element to search for |
ptr | pointer to the array to examine |
count | number of element in the array |
size | size of each element in the array in bytes |
comp | comparison function which returns a negative integer value if the first argument is less than the second,a positive integer value if the first argument is greater than the second and zero if the arguments are equal. key is passed as the first argument, an element from the array as the second. The signature of the comparison function should be equivalent to the following: int cmp(const void *a, const void *b); The function must not modify the objects passed to it and must return consistent results when called for the same objects, regardless of their positions in the array. |
void* calloc | ( | size_t | num, |
size_t | size | ||
) |
Allocates memory for an array of given number objects of size and initializes all bytes in the allocated storage to zero.
Allocates memory for an array of num objects of size size and initializes all bytes in the allocated storage to zero.
num | number of objects |
size | size of the array |
Definition at line 11 of file calloc.c.
References malloc(), memset(), MUL_NO_OVERFLOW, NULL, and SIZE_MAX.
int cxa_atexit | ( | void(*)(void *) | , |
void * | , | ||
void * | |||
) |
div_t div | ( | int | x, |
int | y | ||
) |
Computes both the quotient and the remainder of the division of the numerator x by the denominator y.
Computes both the quotient and the remainder of the division of the numerator x by the denominator y.
x | integer values |
y | integer values |
If either the remainder or the quotient cannot be represented, the behavior is undefined.
Definition at line 35 of file div.c.
References div_t::quot, and div_t::rem.
void exit | ( | int | ) |
void free | ( | void * | ptr | ) |
Deallocates allocated memory space.
Deallocates the space previously allocated by
The behavior is undefined if the value of ptr does not equal a value returned earlier by
The behavior is undefined if the memory area referred to by ptr has already been deallocated, that is, free() or realloc has already been called with ptr as the argument and no calls to malloc, calloc or realloc resulted in a pointer equal to ptr afterwards.
The behavior is undefined if after free returns, an access is made through the pointer ptr (unless another allocation function happened to result in a pointer value equal to ptr)
ptr | pointer to the memory to deallocate |
Referenced by heapsort(), heapsort_r(), realloc(), and reallocf().
char* getenv | ( | const char * | ) |
int heapsort | ( | void * | vbase, |
size_t | nmemb, | ||
size_t | size, | ||
int(*)(const void *, const void *) | compar | ||
) |
Sorts the given array pointed to by vbase in ascending order.
The heapsort() function is a modified selection sort. It sorts an array of nmemb objects, the initial member of which is pointed to by vbase. The size of each object is specified by size.
The contents of the array base are sorted in ascending order according to a comparison function pointed to by compar, which requires two arguments pointing to the objects being compared.
vbase | a pointer to the array to sort |
nmemb | the number of objects to sort |
size | the size of each object in the array |
compar | comparison function which returns a negative integer value if the first argument is less than the second,a positive integer value if the first argument is greater than the second and zero if the arguments are equal. key is passed as the first argument, an element from the array as the second. The signature of the comparison function should be equivalent to the following: int cmp(const void *a, const void *b); |
Referenced by _qsort().
int heapsort_r | ( | void * | vbase, |
size_t | nmemb, | ||
size_t | size, | ||
void * | thunk, | ||
int(*)(void *, const void *, const void *) | compar | ||
) |
Sorts the given array pointed to by vbase in ascending order.
It sorts an array of nmemb objects, the initial member of which is pointed to by vbase. The size of each object is specified by size. The heapsort_r() function behaves identically to
The contents of the array base are sorted in ascending order according to a comparison function pointed to by compar, which requires two arguments pointing to the objects being compared.
vbase | a pointer to the array to sort |
nmemb | the number of objects to sort |
size | the size of each object in the array |
thunk | additional data(variable) for compar |
compar | comparison function which returns a negative integer value if the first argument is less than the second,a positive integer value if the first argument is greater than the second and zero if the arguments are equal. key is passed as the first argument, an element from the array as the second. The signature of the comparison function should be equivalent to the following: int cmp(const void *a, const void *b); |
Referenced by _qsort().
intmax_t imaxabs | ( | intmax_t | j | ) |
Computes the absolute value of an intmax_t number.
Computes the absolute value of an intmax_t number. The behavior is undefined if the result cannot be represented by the return type.
j | value |
imaxdiv_t imaxdiv | ( | intmax_t | numer, |
intmax_t | denom | ||
) |
Computes both the quotient and the remainder of the division of the numerator x by the denominator y.
Computes both the quotient and the remainder of the division of the numerator x by the denominator y. Computes quotient and remainder simultaneously. The quotient is the algebraic quotient with any fractional part discarded (truncated towards zero). The remainder is such that quot * y + rem == x.
Computes the quotient (the result of the expression x/y) and remainder (the result of the expression xy) simultaneously.
numer | intmax_t values (numerator) |
denom | intmax_t values (denominator) |
If either the remainder or the quotient cannot be represented, the behavior is undefined.
Definition at line 30 of file imaxdiv.c.
References imaxdiv_t::quot, and imaxdiv_t::rem.
long labs | ( | long | n | ) |
Computes the absolute value of an long number.
Computes the absolute value of an long number. The behavior is undefined if the result cannot be represented by the return type.
n | long value |
ldiv_t ldiv | ( | long | x, |
long | y | ||
) |
Computes both the quotient and the remainder of the division of the numerator x by the denominator y.
Computes both the quotient and the remainder of the division of the numerator x by the denominator y. Computes quotient and remainder simultaneously. The quotient is the algebraic quotient with any fractional part discarded (truncated towards zero). The remainder is such that quot * y + rem == x.
Computes the quotient (the result of the expression x/y) and remainder (the result of the expression xy) simultaneously.
x | integer values |
y | integer values |
If either the remainder or the quotient cannot be represented, the behavior is undefined.
Definition at line 35 of file ldiv.c.
References ldiv_t::quot, and ldiv_t::rem.
long long llabs | ( | long long | n | ) |
Computes the absolute value of an long long number.
Computes the absolute value of an long long number. The behavior is undefined if the result cannot be represented by the return type.
n | long long value |
lldiv_t lldiv | ( | long long | x, |
long long | y | ||
) |
Computes both the quotient and the remainder of the division of the numerator x by the denominator y.
Computes both the quotient and the remainder of the division of the numerator x by the denominator y. Computes quotient and remainder simultaneously. The quotient is the algebraic quotient with any fractional part discarded (truncated towards zero). The remainder is such that quot * y + rem == x.
Computes the quotient (the result of the expression x/y) and remainder (the result of the expression xy) simultaneously.
x | integer values |
y | integer values |
If either the remainder or the quotient cannot be represented, the behavior is undefined.
Definition at line 30 of file lldiv.c.
References lldiv_t::quot, and lldiv_t::rem.
void* malloc | ( | size_t | size | ) |
Allocates size bytes of uninitialized storage.
If size is zero, the behavior is implementation defined (null pointer may be returned, or some non-null pointer may be returned that may not be used to access storage, but has to be passed to
size | number of bytes to allocate |
Referenced by calloc(), heapsort(), heapsort_r(), realloc(), strdup(), strndup(), and vasprintf().
int mblen | ( | const char * | , |
size_t | |||
) |
size_t mbstowcs | ( | wchar_t * | __restrict, |
const char * | __restrict, | ||
size_t | |||
) |
int mbtowc | ( | wchar_t * | __restrict, |
const char * | __restrict, | ||
size_t | |||
) |
void qsort | ( | void * | a, |
size_t | n, | ||
size_t | es, | ||
int(*)(const void *, const void *) | compar | ||
) |
Sorts the given array pointed to by ptr in ascending order.
Sorts the given array pointed to by ptr in ascending order. The array contains count elements of size bytes. Function pointed to by comp is used for object comparison.
a | pointer to the element to sort |
n | number of element in the array |
es | size of each element in the array in bytes |
compar | comparison function which returns a negative integer value if the first argument is less than the second,a positive integer value if the first argument is greater than the second and zero if the arguments are equal. key is passed as the first argument, an element from the array as the second. The signature of the comparison function should be equivalent to the following: int cmp(const void *a, const void *b); The function must not modify the objects passed to it and must return consistent |
void qsort_r | ( | void * | a, |
size_t | n, | ||
size_t | es, | ||
void * | thunk, | ||
int(*)(void *, const void *, const void *) | cmp | ||
) |
Sorts the given array pointed to by ptr in ascending order.
The qsort_r() function behaves identically to
a | pointer to the element to sort |
n | number of element in the array |
es | size of each element in the array in bytes |
thunk | additional data(variable) for cmp |
cmp | comparison function which returns a negative integer value if the first argument is less than the second,a positive integer value if the first argument is greater than the second and zero if the arguments are equal. key is passed as the first argument, an element from the array as the second. The signature of the comparison function should be equivalent to the following: int cmp(const void *a, const void *b); The function must not modify the objects passed to it and must return consistent |
void quick_exit | ( | int | ) |
int rand | ( | void | ) |
Returns a pseudo-random integer value between 0 and.
Returns a pseudo-random integer value between 0 and
rand is not guaranteed to be thread-safe.
int rand_r | ( | unsigned int * | ctx | ) |
void* realloc | ( | void * | ptr, |
size_t | size | ||
) |
Reallocates the given area of memory.
Reallocates the given area of memory. It must be previously allocated by
The reallocation is done by either: 1) expanding or contracting the existing area pointed to by ptr, if possible. The contents of the area remain unchanged up to the lesser of the new and old sizes. If the area is expanded, the contents of the new part of the array are undefined. 2) allocating a new memory block of size size bytes, copying memory area with size equal the lesser of the new and the old sizes, and freeing the old block.
If there is not enough memory, the old memory block is not freed and null pointer is returned. If ptr is NULL, the behavior is the same as calling malloc(size).
ptr | pointer to the memory area to be reallocated |
size | new size of the array |
size
is zero (e.g. realloc(ptr,0)
) then returns NULL Definition at line 4 of file realloc.c.
References free(), malloc(), memcpy(), and NULL.
Referenced by reallocf().
void* reallocf | ( | void * | ptr, |
size_t | size | ||
) |
Reallocates the given area of memory.
Reallocates the given area of memory. It must be previously allocated by
reallocf is a FreeBSD extension to realloc that frees the input pointer if an error occurrs
This library does not handle the BSD case where realloc(ptr,0)
frees the ptr
ptr | pointer to the memory area to be reallocated |
size | new size of the array |
size
is zero (e.g. realloc(ptr,0)
) then returns NULL Definition at line 26 of file realloc.c.
void srand | ( | unsigned | seed | ) |
Seeds the pseudo-random number generator used by.
Seeds the pseudo-random number generator used by
srand() is not guaranteed to be thread-safe.
seed | the seed value |
double strtod | ( | const char *__restrict | str, |
char **__restrict | str_end | ||
) |
Interprets a floating-point value in a byte string pointed to by str.
Interprets a floating-point value in a byte string pointed to by str. Function discards any whitespace characters (as determined by
The functions sets the pointer pointed to by str_end to point to the character past the last character interpreted. If str_end is NULL, it is ignored.
str | a pointer to the null-terminated byte string to be interpreted |
str_end | pointer to a pointer to character |
float strtof | ( | const char *__restrict | str, |
char **__restrict | str_end | ||
) |
Interprets a floating-point value in a byte string pointed to by str.
Interprets a floating-point value in a byte string pointed to by str. Function discards any whitespace characters (as determined by
The functions sets the pointer pointed to by str_end to point to the character past the last character interpreted. If str_end is NULL, it is ignored.
str | a pointer to the null-terminated byte string to be interpreted |
str_end | pointer to a pointer to character |
long strtol | ( | const char *__restrict | str, |
char **__restrict | str_end, | ||
int | base | ||
) |
Interprets an long value in a byte string pointed to by str.
Interprets an long value in a byte string pointed to by str. Discards any whitespace characters (as identified by calling
1) (optional) plus or minus sign 2) (optional) prefix (0) indicating octal base (applies only when the base is 8 or 0) 3) (optional) prefix (0x or 0X) indicating hexadecimal base (applies only when the base is16 or 0) 4) a sequence of digits
The set of valid values for base is {0,2,3,...,36}. The set of valid digits for base-2 integers is {0,1}, for base-3 integers is {0,1,2}, and so on. For bases larger than 10, valid digits include alphabetic characters, starting from Aa for base-11 integer, to Zz for base-36 integer. The case of the characters is ignored.
If the value of base is 0, the numeric base is auto-detected: if the prefix is 0, the base is octal, if the prefix is 0x or 0X, the base is hexadecimal, otherwise the base is decimal.
If the minus sign was part of the input sequence, the numeric value calculated from the sequence of digits is negated as if by unary minus in the result type.
The functions sets the pointer pointed to by str_end to point to the character past the last character interpreted. If str_end is NULL, it is ignored.
If the str is empty or does not have the expected form, no conversion is performed, and (if str_end is not NULL) the value of str is stored in the object pointed to by str_end.
str | pointer to the null-terminated byte string to be interpreted |
str_end | pointer to a pointer to character. |
base | base of the interpreted integer value |
long double strtold | ( | const char * | __restrict, |
char ** | __restrict | ||
) |
long long strtoll | ( | const char *__restrict | str, |
char **__restrict | str_end, | ||
int | base | ||
) |
Interprets an long long value in a byte string pointed to by str.
Interprets an long value in a byte string pointed to by str. Discards any whitespace characters (as identified by calling
1) (optional) plus or minus sign 2) (optional) prefix (0) indicating octal base (applies only when the base is 8 or 0) 3) (optional) prefix (0x or 0X) indicating hexadecimal base (applies only when the base is16 or 0) 4) a sequence of digits
The set of valid values for base is {0,2,3,...,36}. The set of valid digits for base-2 integers is {0,1}, for base-3 integers is {0,1,2}, and so on. For bases larger than 10, valid digits include alphabetic characters, starting from Aa for base-11 integer, to Zz for base-36 integer. The case of the characters is ignored.
If the value of base is 0, the numeric base is auto-detected: if the prefix is 0, the base is octal, if the prefix is 0x or 0X, the base is hexadecimal, otherwise the base is decimal.
If the minus sign was part of the input sequence, the numeric value calculated from the sequence of digits is negated as if by unary minus in the result type.
The functions sets the pointer pointed to by str_end to point to the character past the last character interpreted. If str_end is NULL, it is ignored.
If the str is empty or does not have the expected form, no conversion is performed, and (if str_end is not NULL) the value of str is stored in the object pointed to by str_end.
str | pointer to the null-terminated byte string to be interpreted |
str_end | pointer to a pointer to character. |
base | base of the interpreted integer value |
unsigned long strtoul | ( | const char *__restrict | str, |
char **__restrict | str_end, | ||
int | base | ||
) |
Interprets an unsigned long value in a byte string pointed to by str.
Interprets an unsigned long value in a byte string pointed to by str. Discards any whitespace characters (as identified by calling
1) (optional) plus or minus sign 2) (optional) prefix (0) indicating octal base (applies only when the base is 8 or 0) 3) (optional) prefix (0x or 0X) indicating hexadecimal base (applies only when the base is16 or 0) 4) a sequence of digits
The set of valid values for base is {0,2,3,...,36}. The set of valid digits for base-2 integers is {0,1}, for base-3 integers is {0,1,2}, and so on. For bases larger than 10, valid digits include alphabetic characters, starting from Aa for base-11 integer, to Zz for base-36 integer. The case of the characters is ignored.
If the value of base is 0, the numeric base is auto-detected: if the prefix is 0, the base is octal, if the prefix is 0x or 0X, the base is hexadecimal, otherwise the base is decimal.
If the minus sign was part of the input sequence, the numeric value calculated from the sequence of digits is negated as if by unary minus in the result type.
If the str is empty or does not have the expected form, no conversion is performed, and (if str_end is not NULL) the value of str is stored in the object pointed to by str_end.
str | pointer to the null-terminated byte string to be interpreted |
str_end | pointer to a pointer to character. |
base | base of the interpreted integer value |
unsigned long long strtoull | ( | const char *__restrict | str, |
char **__restrict | str_end, | ||
int | base | ||
) |
Interprets an unsigned long long value in a byte string pointed to by str.
Interprets an unsigned long long value in a byte string pointed to by str. Discards any whitespace characters (as identified by calling
1) (optional) plus or minus sign 2) (optional) prefix (0) indicating octal base (applies only when the base is 8 or 0) 3) (optional) prefix (0x or 0X) indicating hexadecimal base (applies only when the base is16 or 0) 4) a sequence of digits
The set of valid values for base is {0,2,3,...,36}. The set of valid digits for base-2 integers is {0,1}, for base-3 integers is {0,1,2}, and so on. For bases larger than 10, valid digits include alphabetic characters, starting from Aa for base-11 integer, to Zz for base-36 integer. The case of the characters is ignored.
If the value of base is 0, the numeric base is auto-detected: if the prefix is 0, the base is octal, if the prefix is 0x or 0X, the base is hexadecimal, otherwise the base is decimal.
If the minus sign was part of the input sequence, the numeric value calculated from the sequence of digits is negated as if by unary minus in the result type.
If the str is empty or does not have the expected form, no conversion is performed, and (if str_end is not NULL) the value of str is stored in the object pointed to by str_end.
str | pointer to the null-terminated byte string to be interpreted |
str_end | pointer to a pointer to character. |
base | base of the interpreted integer value |
Definition at line 44 of file strtoull.c.
References isspace(), NULL, and ULLONG_MAX.
int system | ( | const char * | ) |
size_t wcstombs | ( | char * | __restrict, |
const wchar_t * | __restrict, | ||
size_t | |||
) |
int wctomb | ( | char * | , |
wchar_t | |||
) |