Keil™, An ARM® Company

Cx51 User's Guide

On-Line Manuals

Cx51 User's Guide

Cx51 Introduction
Compiling Programs
Language Extensions
Preprocessor
Advanced Programming
8051 Derivatives
Error Messages
Library Reference
Library Files
Source Code
Standard Types
jmp_buf
size_t
va_list
wchar_t
Macros
CBYTE
CWORD
DBYTE
DWORD
FARRAY
FCARRAY
FCVAR
FVAR
PBYTE
PWORD
XBYTE
XWORD
Routines By Category
Buffer Manipulation Routines
Character Routines
Data Conversion Routines
Intrinsic Routines
Math Routines
Memory Allocation Routines
Stream I/O Routines
String Routines
Variable Length Argument Routines
Miscellaneous Routines
Include Files
SFR Definitions
80c517.h
absacc.h
assert.h
ctype.h
float.h
intrins.h
limits.h
math.h
rtx51tny.h
setjmp.h
stdarg.h
stddef.h
stdio.h
stdlib.h
string.h
Reference
_chkfloat_
_crol_
_cror_
_getkey
_irol_
_iror_
_lrol_
_lror_
_nop_
_pop_
_push_
_testbit_
_tolower
_toupper
abs
acos
acos517
asin
asin517
assert
atan
atan2
atan517
atof
atof517
atoi
atol
cabs
calloc
ceil
cos
cos517
cosh
exp
exp517
fabs
floor
fmod
free
getchar
gets
init_mempool
isalnum
isalpha
iscntrl
isdigit
isgraph
islower
isprint
ispunct
isspace
isupper
isxdigit
labs
log
log10
log10517
log517
longjmp
malloc
memccpy
memchr
memcmp
memcpy
memmove
memset
modf
offsetof
pow
printf
printf517
putchar
puts
rand
realloc
scanf
scanf517
setjmp
sin
sin517
sinh
sprintf
sprintf517
sqrt
sqrt517
srand
sscanf
sscanf517
strcat
strchr
strcmp
strcpy
strcspn
strlen
strncat
strncmp
strncpy
strpbrk
strpos
strrchr
strrpbrk
strrpos
strspn
strstr
strtod
strtod517
strtok
strtol
strtoul
switchbank
tan
tan517
tanh
toascii
toint
tolower
toupper
ungetchar
va_arg
va_end
va_start
vprintf
vsprintf
Appendix

Memory Allocation Routines

RoutineAttributesDescription
calloc Allocates storage for an array from the memory pool.
free Frees a memory block that was allocated using calloc, malloc, or realloc.
init_mempool Initializes the memory location and size of the memory pool.
malloc Allocates a block from the memory pool.
realloc Reallocates a block from the memory pool.

Use the memory allocation functions to specify, allocate, and free blocks of memory from a memory pool. All memory allocation functions are implemented as functions and are prototyped in the stdlib.h include file.

Before using any of these functions to allocate memory, you must first specify the size and location of the memory pool using the init_mempool routine. All memory requests are satisfied using this memory block.

The calloc and malloc routines allocate blocks of memory from the pool. The calloc routine allocates an array with a specified number of elements of a given size and initializes the array to 0. The malloc routine allocates a specified number of bytes.

The realloc routine changes the size of an allocated block while the free routine returns a previously allocated memory block to the memory pool.