详解C语言中的memset()函数
简介
memset()
函数是C语言中的一个字符串操作函数,它用于将一段内存空间中的每个字节全部置为特定的值。
该函数的原型为:
void* memset(void* ptr, int value, size_t num);
函数参数说明:
ptr
: 指向要填充的内存块的指针;value
: 要填充的值,通常是整数类型,但它会自动转换为unsigned char
类型;num
: 要填充的字节数。
用法示例
示例一
#include <stdio.h>
#include <string.h>
int main()
{
char str[] = "Hello, world!";
memset(str, '*', strlen(str));
printf("%s", str);
return 0;
}
输出结果为:
***********
上述代码将字符串str
中的每个字符全部替换为*
。
示例二
#include <stdio.h>
#include <string.h>
int main()
{
int arr[10] = {0};
memset(arr, 1, sizeof(arr));
for(int i=0; i<10; i++){
printf("%d ", arr[i]);
}
return 0;
}
输出结果为:
16843009 16843009 16843009 16843009 16843009 16843009 16843009 16843009 16843009 16843009
上述代码将整型数组arr
中的每个元素全部替换为1。
总结
memset()
函数是C语言中一个常用的字符串操作函数,用于将一段内存空间中的每个字节全部置为特定的值。它的主要作用是初始化内存空间,经常在程序中被用于分配内存后对其进行初始化。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解C语言中的memset()函数 - Python技术站