[C/C++基础] C语言常用函数memset的使用方法

函数声明:void *memset(void *s, int ch, size_t n);

用途:为一段内存的每一个字节都赋予ch所代表的值,该值采用ASCII编码。

所属函数库:<memory.h> 或者 <string.h>

参数:(1)s,开始内存的地址;(2)ch和n,从地址s开始,在之后的n字节长度内,把每一个字节的值都赋值为n。

使用举例:

代码如下

[C/C++基础] C语言常用函数memset的使用方法

编译运行结果

说明:

该函数最常用的用途就是将一段新分配的内存初始化为0。例如我们代码的第9-10行。

需要注意的是,函数第二个参数的值代表的是即将设置的每个字节的值,因此对于第二个参数不是0的情况要格外小心。例如我们代码的第12-13行。intArray[0]本来是一个四字节的整数,它的每一个字节都将变成1。第12行运行完毕,intArray[0]的内容如下

(二进制)00000001 00000001 00000001 00000001 = (十进制)16843009

这也是为什么第13行输出的结果是16843009。

------------------------------------分割线------------------------------------

C++ Primer Plus 第6版 中文版 清晰有书签PDF+源代码

读C++ Primer 之构造函数陷阱

读C++ Primer 之智能指针

读C++ Primer 之句柄类

将C语言梳理一下,分布在以下10个章节中:

Linux-C成长之路(一):Linux下C编程概要

Linux-C成长之路(二):基本数据类型

Linux-C成长之路(三):基本IO函数操作

Linux-C成长之路(四):运算符

Linux-C成长之路(五):控制流

Linux-C成长之路(六):函数要义

Linux-C成长之路(七):数组与指针

Linux-C成长之路(八):存储类,动态内存

Linux-C成长之路(九):复合数据类型

Linux-C成长之路(十):其他高级议题

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/ac37c0ace365b1ba9515e2352f6aa6d2.html