memset
函数是C语言中的一个库函数,其作用是将一块内存区域的每个字节都设置为指定的值。
memset
函数的原型如下:
void *memset(void *ptr, int value, size_t num);
参数解释:
ptr
:指向要填充的内存区域的指针。value
:要设置的值,通常以整数形式给出。该值会被强制转换为无符号字符类型(unsigned char
)。num
:要设置的字节数。
使用memset
函数可以快速初始化一块内存区域,例如将整个区域设置为0或者将字符串缓冲区清零。也可以用其他非零值来填充内存,例如初始化一个数组为特定的值。,通常我们会用该函数来初始化一个结构体,如:
struct msgbuf
{
long type;
char mtext[BUFSIZ];
}
此时可以用memset函数来初始化一个如上的结构体变量
int main()
{
struct msgbuf msg;
memset(&msg,0,sizeof(msg));
}