十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
memset
成都创新互联专注为客户提供全方位的互联网综合服务,包含不限于网站制作、网站设计、兴宁网络推广、成都微信小程序、兴宁网络营销、兴宁企业策划、兴宁品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;成都创新互联为所有大学生创业者提供兴宁建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com
原型:extern
void
*memset(void
*buffer,
int
c,
int
count);
用法:#include
string.h
功能:把buffer所指内存区域的前count个字节设置成字符c。
说明:返回指向buffer的指针。
举例:
//
memset.c
#include
syslib.h
#include
string.h
main()
{
char
*s="Golden
Global
View";
clrscr();
memset(s,'G',6);
printf("%s",s);
getchar();
return
0;
}
相关函数:bzero,setmem,strset
在你申请了一块内存之后,
比如
int*p=null;
p=malloc(10*sizeof(int));//申请了10个int型内存
memset(p,0,10*sizeof(int));//全部初始化为0
memset的作用就是把你快连续的内存初始化为你给的值。
example
/*memset.c:thisprogramusesmemsetto
*setthefirstfourbytesofbufferto"*".
*/
#includememory.h
#includestdio.h
voidmain(void)
{
charbuffer[]="thisisatestofthememsetfunction";
printf("before:%s\n",buffer);
memset(buffer,'*',4);
printf("after:%s\n",buffer);
}
output
before:thisisatestofthememsetfunction
after:****isatestofthememsetfunction
memset(addr, val, size);
把addr地址开始的内存,大小为size字节的值,赋值为val
相当于
unsigned char * t = (unsigned char *)addr;
int i;
for(i = 0; i size; i ++)
t[i] = val;
效果一样,不过一般memset不会这么实现,而是采用更高效的方法