内存操作函数
1.memset()
#include <string.h>
void *memset( void *buffer, int ch, size_t count );
功能: 函数拷贝ch 到buffer 从头开始的count 个字符里, 并返回buffer指针。 memset() 可以应用在将一段内存初始化为某个值。
例如:
memset( the_array, '\0', sizeof(the_array) );
这是将一个数组的所以分量设置成零的很便捷的方法。
2.memcpy
语法:
#include <string.h>
void *memcpy( void *to, const void *from, size_t count );//count 为字节数
功能:函数从from中复制count 个字符到to中,并返回to指针。 如果to 和 from 重叠,则函数行为不确定。
3.memmove
-
功能用法与memcpy相同
-
低版本memcpy在from与to指向的空间重叠时,会覆盖重叠部分内容.高版本与memmove一致.
4.memcmp
- 比较内存大小
语法:
#include <string.h>`
int memcmp( const void *buffer1, const void *buffer2, size_t count );
功能:函数比较buffer1 和 buffer2的前count 个字符。
返回值如下:
Value | 解释 |
---|---|
less than 0 | buffer1 is less than buffer2 |
equal to 0 | buffer1 is equal to buffer2 |
greater than 0 | buffer1 is greater than buffer2 |
5.内存泄漏
定义 : 内存只申请,未释放