内存操作函数与字符串操作函数类似,因为字符串函数都是以NULL结尾的,但是,存在许多非字符串数据内部包含零值的情况也需要和字符串类似的操作,但我们无法使用字符串函数来操作,因此就有了内存操作函数,这些函数不会受到NULL字节的影响。
1、void *memcpy( void *dst, void const *src, size_t length ) /*函数从src的起始位置复制length个字节到dst的起始位置,可以使用此方法赋值任意类型的值,第三个参数是以字节为单位的,源参数和目的参数重叠的结果将是未定义的*/
2、void *memmove( void *dst, void const *src, size_t length ) /*memmove函数和memcpy函数实现功能类似,只是函数memmove函数允许源参数和目的参数重叠,但是它比memcpy在效率上可能要慢一些*/
3、void *memcmp( void const *a, void const *b, size_t length ) /*函数比较分别起始于内存a和b的两段数据串,共比较length个字节*/
4、void *memchr( void const *a, int ch , size_t length ) /*函数从a的起始位置开始查找ch第一次出现的位置,并返回一个指向该位置的指针,如果查找length个字节后仍未找到,则返回一个NULLL指针*/
5、void *memset( void const *a, int ch, size_t length ) /*函数从a的起始位置开始的length个字节都设置为ch值*/