目录
memset函数的三个参数
- void* ptr:void类型的ptr指针变量,可接收任意类型的数据地址,用于接收要被填充的内存块的首地址
- int value:设置需要填充的内容为什么字符,字符是以ASCII码值的形式进行存储的,所以使用int类型的value变量接收没有问题
- size_t num:无符号类型的num变量,用来接收需要填充的字节个数
memset函数的功能介绍
- 填充内存块,也就是设置内存块的内容
- 由以上三个参数来解释就是:将ptr所指向的内存块的前num个字节的内容设置成value
memset函数的返回值及memset函数的头文件
- 返回值也为void*,返回指针变量,也就是返回ptr的起始地址
- memset函数的头文件:#include<string.h>
memset函数的运用
将前5个字符设置成'x'字符
#include<stdio.h>
#include<string.h>
int main()
{
//创建一个字符串数组
char arr[] = "hello world";
//设置字符串内容
//将arr字符串的前5个字节的内容设置成'x'字符
memset(arr, 'x', 5);
//验证
printf("%s\n", arr);
return 0;
}
将后5个字符设置成'x'字符
//将arr字符串的最后5个字节的内容设置成'x'字符
memset(arr + 6, 'x', 5);
接收memset函数的返回值
#include<stdio.h>
#include<string.h>
int main()
{
//创建一个字符串数组
char arr[] = "hello world";
//设置字符串内容
//将arr字符串的前5个字节的内容设置成'x'字符
char* ret = (char*)memset(arr, 'x', 5);
//验证
printf("%s\n", ret);
return 0;
}