内存函数__memset

简介: memset使用起来比较方便,但也有不足,在对整形初始化时除了初始化为0和-1不能初始化成其他值,我们也可以用循环去完成这些初始化,相对于结构来说的话,memset更加简洁

一.函数简介

memset按照字节数对内存块进行初始化,引用头文件#include<string.h>

函数声明:

void * memset ( void * ptr, int value, size_t num );

ptr:初始化的空间

value:要被初始化的值

num:字节

返回值:无符号指针类型

二.注意事项

memset按照字节数对内存块进行初始化时,不能所以不能用它将int数组出初始化为0和-1之外的其他值

例如:

1. #include<stdio.h>
2. #include<string.h>
3. int main()
4. {
5. int arr[10]={0};
6. memset(arr,1,4);
7. for(int i=0;i<10;i++)
8.     {
9. printf("%d\n",arr[i]);
10.     }
11. return 0;
12. }

0755BD45-BEB7-41FB-A8A9-CC9E02C0716F.jpeg

看到arr[0]并没有被赋值为1,以下解释

memset函数只能取value的后八位赋值给每个字节,数组arr是整形,整形占有4个字节,而memset函数还是按照字节为单位进行赋值,将1(00000001)赋给每一个字节。所以arr[0]值为(00000001 00000001 00000001 00000001),十进制就是16843009。

字符类型初始化事例:

1. #include<stdio.h>
2. #include<string.h>
3. int main()
4. {
5. char arr[10]={0};
6. memset(arr,'a',10*sizeof(char));//是将每个字节都设置成1
7. for(int i=0;i<10;i++)
8.     {
9. printf("%c\n",arr[i]);
10.     }
11. return 0;
12. }

E75F71B8-B79A-47DB-9322-EBC292B3010B.jpeg

总结:

memset使用起来比较方便,但也有不足,在对整形初始化时除了初始化为0和-1不能初始化成其他值,我们也可以用循环去完成这些初始化,相对于结构来说的话,memset更加简洁



相关文章
|
19小时前
|
程序员 C语言
C语言库函数 — 内存函数(含模拟实现内存函数)
C语言库函数 — 内存函数(含模拟实现内存函数)
33 0
|
19小时前
|
C语言
C语言:内存函数(memcpy memmove memset memcmp使用)
C语言:内存函数(memcpy memmove memset memcmp使用)
|
19小时前
|
编译器 C语言
字符串与内存函数
字符串与内存函数
26 0
|
19小时前
|
存储 编译器 C语言
C语言:字符函数 & 字符串函数 & 内存函数
C语言:字符函数 & 字符串函数 & 内存函数
15 2
|
19小时前
|
编译器
练习使用动态内存相关的4个函数:malloc、calloc、realloc、free
在了解使用动态内存相关的四个函数之前,我们先了解一下,为什么要有动态内存分配?
16 0
|
19小时前
|
存储 编译器 C++
【C++】内存管理和模板基础(new、delete、类及函数模板)
【C++】内存管理和模板基础(new、delete、类及函数模板)
22 1
|
19小时前
|
编译器 C语言 C++
详解内存操作函数
详解内存操作函数
|
19小时前
|
编译器 C++
C++ 解引用与函数基础:内存地址、调用方法及声明
C++ 中的解引用允许通过指针访问变量值。使用 `*` 运算符可解引用指针并修改原始变量。注意确保指针有效且不为空,以防止程序崩溃。函数是封装代码的单元,用于执行特定任务。理解函数的声明、定义、参数和返回值是关键。函数重载允许同一名称但不同参数列表的函数存在。关注公众号 `Let us Coding` 获取更多内容。
138 1
|
19小时前
|
Java 程序员 编译器
C语言中灵活多变的动态内存,malloc函数 && free函数&& calloc函数 && realloc函数
C语言中灵活多变的动态内存,malloc函数 && free函数&& calloc函数 && realloc函数
|
19小时前
|
存储 程序员 编译器
c++面向对象概述、内存分析、引用、函数
c++面向对象概述、内存分析、引用、函数

热门文章

最新文章