Keil Logo

Technical Support

On-Line Manuals

C251 User's Guide

C251 Introduction Compiling Programs Language Extensions Preprocessor Advanced Programming Error Messages Library Reference Library Files Source Code Standard Types jmp_buf va_list Macros CBYTE CVAR CARRAY DARRAY DBYTE DVAR HARRAY HBYTE HVAR NARRAY NBYTE NVAR XARRAY XBYTE XVAR 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 absacc.h assert.h ctype.h float.h intrins.h limits.h math.h setjmp.h stdarg.h stddef.h stdio.h stdlib.h string.h Reference _chkdouble_ _chkfloat_ _crol_ _cror_ _getkey _irol_ _iror_ _lrol_ _lror_ _nop_ _testbit_ _tolower _toupper abs acos asin assert atan atan2 atof atoi atol cabs calloc ceil cos cosh exp fabs fcalloc ffree finit_mempool floor fmalloc fmemcpy fmemset frealloc free getchar gets hmemccpy hmemchr hmemcmp hmemcpy hmemmove hmemset hstrcmp hstrcpy hstrlen hstrncpy init_mempool isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit labs log log10 longjmp malloc memccpy memchr memcmp memcpy memmove memset modf offsetof pow printf putchar puts rand realloc scanf setjmp sin sinh sprintf sqrt srand sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strpos strrchr strrpbrk strrpos strspn tan tanh toascii toint tolower toupper ungetchar va_arg va_end va_start vprintf vsprintf xcalloc xfree xinit_mempool xmalloc xmemcpy xmemset xrealloc Appendix

Buffer Manipulation Routines

The buffer manipulation routines are used to work on memory buffers on a character-by-character basis. A buffer is an array of characters like a string, however, a buffer is usually not terminated with a null character ('\0'). For this reason, these routines require a buffer length or count argument.

All of these routines are implemented as functions. Function prototypes are included in the STRING.H include file.

Routine Attributes Description
fmemcpy reentrant; Copies a specified number of data bytes from one far memory buffer to another.
fmemset reentrant Initializes a specified number of data bytes in far memory.
hmemccpy reentrant Uses huge pointers and copies data bytes from one buffer to another until a specified character or specified number of characters has been copied.
hmemchr reentrant Uses huge pointers and returns a pointer to the first occurrence of a specified character in a buffer.
hmemcmp reentrant Uses huge pointers and compares a given number of characters from two different buffers.
hmemcpy reentrant Uses huge pointers and copies a specified number of data bytes from one buffer to another.
hmemmove reentrant Uses huge pointers and copies a specified number of data bytes from one buffer to another. This routine is typically used when the two buffers may overlap.
hmemset reentrant Uses huge pointers and initializes a specified number of data bytes in a buffer to a specified character value.
memccpy reentrant Copies data bytes from one buffer to another until a specified character or specified number of characters has been copied.
memchr reentrant Returns a pointer to the first occurrence of a specified character in a buffer.
memcmp reentrant Compares a given number of characters from two different buffers.
memcpy reentrant Copies a specified number of data bytes from one buffer to another.
memmove reentrant Copies a specified number of data bytes from one buffer to another. This routine is typically used when the two buffers may overlap.
memset reentrant Initializes a specified number of data bytes in a buffer to a specified character value.
xmemcpy reentrant Copies a specified number of data bytes from one xdata memory buffer to another.
xmemset reentrant Initializes a specified number of data bytes in xdata memory.
  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.