作用
复制字符 c(一个无符号字符)到参数 str 所指向的字符串的前 n 个字符。
将已开辟内存空间 s 的首 n 个字节的值设为值 c。
常用于内存空间初始化;也可以用来做内存拷贝,可以拷贝任何数据类型的对象,可以指定拷贝的数据长度。
声明
void *memset(void *str, int c, size_t n)
//str -- 指向要填充的内存块。
//c-- 要被设置的值。该值以 int 形式传递,但是函数在填充内存块时是使用该值的无符号字符形式。
//n -- 要被设置为该值的字符数。
返回值
返回一个指向存储区 str 的指针。
例子
#include <stdio.h>
#include <string.h>
int main ()
{
char str1[10];
memset(str1,'@',5);
puts(str1);
char str2[20];
strcpy(str2,"Hello World");
puts(str2);
memset(str2,'$',7);
puts(str2);
return(0);
}
结果如下:
@@@@@
Hello World
$$$$$$$orld