avr-libc  2.1.0
Standard C library for AVR-GCC

AVR Libc Home Page

AVRs

AVR Libc Development Pages

Main Page

User Manual

Library Reference

FAQ

Example Projects

Data Structures | Macros | Typedefs | Functions | Variables
stdlib.h File Reference

Go to the source code of this file.

Data Structures

struct  div_t
 
struct  ldiv_t
 

Macros

#define RAND_MAX   0x7FFF
 

Typedefs

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

Functions

void abort (void) __ATTR_NORETURN__
 
int abs (int __i)
 
long labs (long __i)
 
void * bsearch (const void *__key, const void *__base, size_t __nmemb, size_t __size, int(*__compar)(const void *, const void *))
 
div_t div (int __num, int __denom) __asm__("__divmodhi4")
 
ldiv_t ldiv (long __num, long __denom) __asm__("__divmodsi4")
 
void qsort (void *__base, size_t __nmemb, size_t __size, __compar_fn_t __compar)
 
long strtol (const char *__nptr, char **__endptr, int __base)
 
unsigned long strtoul (const char *__nptr, char **__endptr, int __base)
 
long atol (const char *__s) __ATTR_PURE__
 
int atoi (const char *__s) __ATTR_PURE__
 
void exit (int __status) __ATTR_NORETURN__
 
void * malloc (size_t __size) __ATTR_MALLOC__
 
void free (void *__ptr)
 
void * calloc (size_t __nele, size_t __size) __ATTR_MALLOC__
 
void * realloc (void *__ptr, size_t __size) __ATTR_MALLOC__
 
double strtod (const char *__nptr, char **__endptr)
 
double atof (const char *__nptr)
 
int rand (void)
 
void srand (unsigned int __seed)
 
int rand_r (unsigned long *__ctx)
 

Variables

size_t __malloc_margin
 
char * __malloc_heap_start
 
char * __malloc_heap_end
 

Non-standard (i.e. non-ISO C) functions.

#define RANDOM_MAX   0x7FFFFFFF
 
char * itoa (int val, char *s, int radix)
 
char * ltoa (long val, char *s, int radix)
 
char * utoa (unsigned int val, char *s, int radix)
 
char * ultoa (unsigned long val, char *s, int radix)
 
long random (void)
 
void srandom (unsigned long __seed)
 
long random_r (unsigned long *__ctx)
 

Conversion functions for double arguments.

Note that these functions are not located in the default library, libc.a, but in the mathematical library, libm.a. So when linking the application, the -lm option needs to be specified.

#define DTOSTR_ALWAYS_SIGN   0x01 /* put '+' or ' ' for positives */
 
#define DTOSTR_PLUS_SIGN   0x02 /* put '+' rather than ' ' */
 
#define DTOSTR_UPPERCASE   0x04 /* put 'E' rather 'e' */
 
#define EXIT_SUCCESS   0
 
#define EXIT_FAILURE   1
 
char * dtostre (double __val, char *__s, unsigned char __prec, unsigned char __flags)
 
char * dtostrf (double __val, signed char __width, unsigned char __prec, char *__s)