一般用于数值和结构体的初始化 这里仅仅说明对数组的初始化
函数原型
void *memset(void *s, int ch, unsigned n);
作用
将s所指向的某一块内存中的每个字节的内容全部设置为ch指定的ASCII值,其返回值为指向S的指针。(重点以字节为单位初始化)
该函数存在与中(c++)
因为在c/c++中一个字符占一个字节 可以猜想该函数最初设计的时候是想字符 数组进行初始化
但往后发展该函数也可以初始化非字符函数为一些特殊值 如:0,-1,0x3f3f3f3f
对函数原型的解释
1.void*s 为函数名(要初始化的函数名)
2.unsinned n
用初始化的内存数量(以字节为单位表示,对应以内存为单位初始化)
以sizeof计算该内存
- sizeof(int ) 表示int所占的字节数
- sizeof a 表示a这个变量所占的字节数(该处不需括号)
例如:memset(array,0,5sizeof(int)); 表示将array这个数组的54=20个字节初始化
3., int ch,
该函数最先用来对字符数组初始化
ch 一般为一个字符 并将该字符的ASCII赋给每个字节 (计算机中 字符和int相通)
例