首页 > 系统相关 >linux中memset作用,为什么要用memset

linux中memset作用,为什么要用memset

时间:2023-02-01 00:25:22浏览次数:60  
标签:初始化 arr int 要用 memset 数组 linux 100

光脚赤膊 于 2010-03-28 14:36:08发表:

“用处是大面积赋值,速度快!”

所谓“初始化”,当然是指将你定义的变量或申请的空间赋予你所期望的值,例如语句int i=0;就表明定义了一个变量i,并初始化为0;如果int j=5;就表明定义了一个变量j,并初始化为5。

但是对于大块儿内存的分配,这种方法当然不行,例如int arr[100];定义了数组arr,包含100个元素,如果你写成int arr[100]=0;想将数组全部内容初始化为0,是不行的,连编译都不能通过。这种情况的初始化,有两种方法,一种是一个一个的初始化,如for(int i=0;i<100;i++)arr[i]=0;就完成了数组的初始化。另一种方法,就是使用memset:一个语句就够了--memset(arr,0,sizeof(int)*100);

各参数解释如下:arr是数组的首地址,0就是要讲这些地址的内容赋值为0,sizeof(int)求出int类型的长度,乘以100就表示arr数组的整个长度。

当然,如果用malloc分配的内存,一般只能使用memset来初始化了,用第一种初始化方法明显不合适。

标签:初始化,arr,int,要用,memset,数组,linux,100
From: https://www.cnblogs.com/DongdongAa/p/17081213.html

相关文章

  • Linux 内核概念和学习路线
    01前言本文主要讲解什么是Linux内核,以及通过多张图片展示Linux内核的作用与功能,以便于读者能快速理解什么是Linux内核,能看懂Linux内核。拥有超......
  • Linux初学笔记
    关于java全栈开发要掌握的技术JavaSEMySQL前端(HTML、CSS、JS)JavaWebSSM框架(可以开始找工作了)SpringboardVueSpringCloudGitLinux关于Linux需要掌握的技术消......
  • linux debian安装erlang和rabbitmq
    debian系安装rabbitmq的服务端安装erlang本文讲rabbitmq。erlang语言环境就root快捷安装,方便学习(erlang版本23.x)aptinstallerlang安装rabbitmq-server安装仓......
  • VMware虚拟机安装Linux后忘记root密码如何重置
    前言好久没用虚拟机,今天想用时发现,竟然忘记了Linux用户的登录密码,只能暴力修改root用户密码了。下面来说一下,我是怎样成功修改root用户密码的操作步骤大概如下:第一步:启动......
  • 设置和修改Linux的swap分区大小
    在Linux编译gcc时,遇到编译错误,究其根源是因为内存不足,这时通过修改swap大小解决了问题相关操作如下:1.查看当前分区情况free-m2.增加swap大小,2G左右ddif=/de......
  • 关于wsl-装 Linux 分发
       ......
  • Linux USB 主机控制器和设备驱动
    USB的全称是UniversalSerialBus,顾名思义:通用串行总线。提到总线,联想一下,在你心目中总线总是用来干嘛的?还记得I2C总线?I2C总线上挂有二条信号线,一条是SCL、SDA,这......
  • linux防火墙状态查看的方法
    1、基本操作2、开启80端口保存退出后重启防火墙二、firewall防火墙1、查看firewall服务状态出现Active:active(running)切高亮显示则表示是启动状态。出现Active:inacti......
  • Linux 磁盘操作
    使用dd写满磁盘:ddif=/dev/zeroof=/data/1T-2.filebs=1Gcount=1000向1T-2.file中写入10G的0,填充磁盘。if:inputfileof:outfilebs:bytes同时设置读/写缓冲区的......
  • linux驱动编写(pwm驱动)
     pwm方波可以用来控制很多的设备,比如它可以被用来控制电机。简单来说,就是单位时间内的方波越多,那么电机的转速就会越快;反之就越慢。通过这个特性,soc就可以轻松地利用pwm对......