memset函数

memset是计算机中C/C++语言初始化函数。作用是将某一块内存中的内容全部设置为指定的值, 这个函数通常为新申请的内存做初始化工作。

函数介绍:头文件:<memory.h>或<string.h>

     void *memset(void *s, int ch, size_t n);  //函数解释:将s中当前位置后面的n个字节 用 ch 替换并返回 s 。

注意:1.函数按字节对内存块进行填充,所以ch超过一字节,将会按照最后一个字节填充,例如:int类型 -1的二进制码为(11111111 11111111 11111111 11111111),它的后八位为(11111111),

则对所有空间填充(11111111);而511的二进制码为(00000000 00000000 00000001 11111111)后八位都为(11111111),则填充也为(11111111),所以-1和511的填充结果一样;所以对

于ch为int类型一般只用0或-1填充;

memset函数一般应用:

1. 对数组进行初始化

int a[10][10];
memset(a,0,sizeof(a));

2. 清空结构体变量

struct sample_struct
{
    char csName[16];
    int iSeq;
    int iType;
};

struct sample_struct stTest;

memset(&stTest,0,sizeof(sample_struct));

 

posted on 2019-01-25 02:06  ggsdduzdl  阅读(431)  评论(0编辑  收藏  举报

导航