memset函数

memset

头文件

#include <string.h>

函数原型

void *_Cdecl memset (void *s, int c, size_t n);

函数作用

​ 将存储块(s)的前n个字节设置成c。

函数形参

​ s:需要被设置的存储块
​ c:用来设置的数据
​ n:设置的字节数

返回值

​ 返回设置后的s。

注意事项:

memset( )函数只有在字符串(s)为NULL时,才返回NULL。
使用时需要注意的地方,当存储块(s)的空间大小 小于n个字节时,
就是要确保字符串(s)有字符串结束标记('\0')。
否则会出现严重越权操作,并有可能会造成严重的数据破坏和系统问题。

函数代码

#include<stdio.h>
#include<string.h>
int main()
{
    char array[12]="hello word";
    int a[10] = {1,2,3,4,5,6,7,8,9,10};
    int i=0;
    printf("Reture value: %s", memset(array,'X',5));
    printf("\n");
    memset(a, 0, 5*sizeof(int));
    for(i=0; i<10; i++)
    {
        printf("%d ", a[i]);
    }
    return 0;
}
输出结果
Reture value: XXXXX word
0 0 0 0 0 6 7 8 9 10

函数传参时,按照传入的数据(类型),初始化一片连续的内存地址。

内存地址的大小要大于初始化数据的大小。

posted @ 2020-07-25 16:34  啊振不坏  阅读(303)  评论(0)    收藏  举报
// 侧边栏目录 // https://blog-static.cnblogs.com/files/douzujun/marvin.nav.my1502.css