1、memset() 简介
1.1 函数原型
void *memset(void *s, int ch, size_t n);
1.2 参数
- s – 指向内存块的指针。
- ch– 用于替换的值。
- n– 要置换的字节数。
1.3 功能
将s中当前位置后面的n个字节用ch替换并且返回s。
作用是在一段内存块中填充某一个给定的值,常用于较大的结构体和数组的清零操作。
1.4 头文件
#include <string.h>
2、memset() 用法
memset函数常用于较大的结构体和数组的清零操作。
具体代码如下:
#include <stdio.h>
#include <string.h>
int main(void)
{
char data[7]="memset";
printf("%s\n",data);
memset(data,1,6);//全部置换为整数
printf("%d %d %d %d %d %d\n",data[0],data[1],data[2],data[3],data[4],data[5]);
memset(data,'a',6);//全部置换为字符
printf("%s\n",data);
memset(&data[4],1,2);//局部置换
printf("%d %d %d %d %d %d\n",data[0],data[1],data[2],data[3],data[4],data[5]);
return 0;
}
运行结果如下:
memset
1 1 1 1 1 1
aaaaaa
97 97 97 97 1 1