如何理解memset函数的作用
下面是个人编写了一道程序来理解这个函数,但是不知道 大家的理解是否也跟我个人完全一样
个人是这样理解:memset函数 三个参数:第一个为 地址,第二个为 字节值,第三个字节个数
#include<stdio.h>
#include<memory.h>
void main()
{
int a[5]; //整型数组,每个元素值都是占4个字节
memset(a,1,5*sizeof(int));//此函数是以字节为单位的,所以需要分配20个字节,每个字节值为1
int i;
for(i=0;i<5;i++)
printf("%d ",a[i]);
printf("\n");
char b[5]; //定义字符数组,如果没有初始化字符数组,而且又没有使用memset函数初始化内存,则出现乱码
memset(b,'1',5);//字节值为'1'
for(i=0;i<5;i++)
printf("%c",b[i]);
printf("\n这就是使用memset函数初始化整型数组跟字符数组的区别了\n");
}
//memset:作用是在一段内存块中填充某个给定的值 它对较大的结构体或数组进行清零操作的一种最快方法
为了集思广益,请问各位 是如何理解 这个函数的,说说你们的看法吧? 谢谢了