打开C语言常用的内存函数大门(三) —— memset()函数(内含讲解用法和模拟实现)

文章目录

  • 1. 前言
  • 2. memset函数
    • 2.1 memset函数原型
    • 2.2 memset函数参数的介绍
    • 2.3 memset函数的使用演示
  • 3. memset函数的模拟实现
  • 4. 总结

1. 前言

哈喽,我们又见面了。通过前面两个内存函数(memcpy、memmove函数)讲解的锤炼后,对如何解析一个自己从来没有见过的函数,已经做到心中有数了。

本文将继续带着大家学习第三个C语言中常用的内存函数——memset函数。车速可能有点快,抓紧了!!!🚉🚢🚢

2. memset函数

memset函数的作用:将指定空间位置的值,替换成自己想要的值,替换位置的多少可以自己设定。

2.1 memset函数原型

memset函数原型

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

2.2 memset函数参数的介绍

这里就不讲memset的返回值了,因为我们在日常编程中很少用到。

返回值和形式参数

形式参数作用
void* ptr存放待改变数据空间的首地址
int value用于替换掉原数据的值
size_t num决定替换的次数(基础好一点的读者,可以理解为(char*)类型指针的偏移次数)

2.3 memset函数的使用演示

案例一:
案例一

其实,memset函数不是这么使用的。
下面我来给大家演示一种它能够出现的使用场景:隐藏客户的一些重要信息。

请看代码:
案例二
这样子的话,客户的个人消息就能够很好的被隐藏起来。

3. memset函数的模拟实现

又到了观众佬爷们最熟悉的函数模拟实现环节。

结合函数的功能和参数,不难写出这个模拟实现的代码:
memset模拟实现

4. 总结

本文讲解了memset函数及其模拟实现。希望读者们能够理解!🙏🙏🙏

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/20408.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【TB作品】msp430f5529单片机墨水屏,口袋板,tmp421温度,温控风扇

文章目录 一、扬声器模块介绍二、驱动介绍三、程序介绍四、全部代码下载 msp430f5529d单片机墨水屏,口袋板,tmp421温度,温控风扇 基本要求:高于20度开转,温度越高转速越快,高于40度风扇停转,温…

PHPstudy情况下上传图片马需要的.htaccess文件

网上的方法是无效的&#xff1a; <FilesMatch "test.jpg">SetHandler application/x-httpd-php</FilesMatch>原因是新版本的phpstudy使用了cgi模式,而网上的方法只适用于linux模式。 <FilesMatch "tpm.png"> AddHandler fcgid-script …

知识计算概述

文章目录 知识计算研究现状技术发展趋势 知识计算 随着知识图谱技术及应用的不断发展&#xff0c;图谱质量和知识完备性成为影响知识图谱应用的两大重要难题&#xff0c;以图谱质量提升、潜在关系挖掘与补全、知识统计与知识推理作为主要研究内容的知识计算成为知识图谱应用的重…

C语言 | Leetcode C语言题解之第119题杨辉三角II

题目&#xff1a; 题解&#xff1a; int* getRow(int rowIndex, int* returnSize) {*returnSize rowIndex 1;int* row malloc(sizeof(int) * (*returnSize));row[0] 1;for (int i 1; i < rowIndex; i) {row[i] 1LL * row[i - 1] * (rowIndex - i 1) / i;}return row…

Qt第三方库QicsTable简单实例(1)

闲来无事&#xff0c;无意间看到一个Qics表格操作第三方库&#xff0c;自己写了一个特别简单的实例&#xff0c;效果如图所示&#xff1a; 操作界面的数据还是特别快的&#xff0c;因为使用了模型

【Spring Cloud】分布式配置动态刷新

目录 问题解决方案1.使用Spring Boot Actuator监控接口【不推荐】流程图使用Spring Boot Actuator的步骤 2.Spring Cloud Bus第一种方案问题Spring Cloud Bus流程图Spring Cloud Bus实现客户端刷新的步骤开发准备实现1. 在config-server中添加依赖2.在config-server中添加配置a…

你喜欢什么样的狗?喜欢内狗还是外狗?论看门狗的重要性:极低功耗微处理器复位电路CN803/CN809/CN810

看门狗&#xff1a;缩写WTD,英文WATCH DOG. 你的程序会死机吗&#xff1f; 陷入死循环或程序指针不知跑哪里去了&#xff0c;看门狗的作用是把程序拉回来&#xff0c;重新开始跑。 有了看门狗&#xff0c;程序就不会死机&#xff0c;所以很重要。 比如一个温度控制器&#xf…

OBproxy基础运维

简介 obproxy 属于OceanBase的代理&#xff0c;生产环境中 OceanBase 数据库的数据 会以 多副本的形式 存放在各个 OBServer 节点上&#xff0c;obproxy 接收用户发出的 SQL 请求&#xff0c;并将 SQL 请求转发至最佳目标 OBServer 节点&#xff0c;最后将执行结果返回给用户&…

算法题解记录27+++随机链表的复制(百日筑基)

一、题目描述&#xff1a; 题目难度&#xff1a;中等 给你一个长度为 n 的链表&#xff0c;每个节点包含一个额外增加的随机指针 random &#xff0c;该指针可以指向链表中的任何节点或空节点。 构造这个链表的 深拷贝。 深拷贝应该正好由 n 个 全新 节点组成&#xff0c;其中每…

Flutter开发指南

Flutter开发指南&#xff08;Android 开发角度&#xff09; 与Android 的对比 1.Android 的View 与Flutter 的对应关系&#xff1a; a.在android 中&#xff0c;view 是屏幕显示的基础&#xff0c;比如 button&#xff0c;文本&#xff0c;列表&#xff0c;输入框都是 view。…

小柴带你学AutoSar系列一、基础知识篇(4)编译

小柴带你学AutoSar总目录https://blog.csdn.net/qianshang52013/article/details/138140235?spm1001.2014.3001.5501 Flechazohttps://www.zhihu.com/people/jiu_sheng 编译真的很重要&#xff01;了解一下机器是如何工作的吧。当然啦&#xff01;通过学习这篇文章还可以学习…

unityBIM

Revit模型到Unity勉强能用 1、Revit直接导出FBX&#xff0c;然后拖到unity里面 2、通过Navisworks导出FBX&#xff0c;拖到unity里面。 我什么都还没做&#xff0c;只建立了一个空的URP效果&#xff0c;把FBX拖进去&#xff0c;挂了一个相机控制器&#xff0c;效果勉强看得过…

中医的悠久历史文化

中医&#xff0c;作为中华民族的传统医学&#xff0c;拥有着悠久的历史和深厚的文化底蕴。自古以来&#xff0c;中医便以其独特的理论体系和治疗方法&#xff0c;为中华民族的繁衍昌盛做出了巨大贡献。如今&#xff0c;随着现代医学的不断发展&#xff0c;中医依然以其独特的魅…

APP上架 篇三:ICP备案

文章目录 系列文章ICP备案简介非经营性备案与经营性备案ICP备案官网ICP备案流程ICP备案实例(阿里云服务器+新网域名)ICP备案费用ICP许可证的流程和费用系列文章 APP上架 篇一:上架资质要求 APP上架 篇二:注册域名 APP上架 篇三:ICP备案 系列计划预告: APP上架 篇二:计…

奇安信_NAC终端安全准入系统(相关问题整理)

奇安信终端安全准入系统 ,下称NAC 一、入网控制方式 1.IP流量控制 2.802.1X 准入 需要NAC、交换机、终端 以802.1X 3.DHCP 准入 将NAC作为DHCP服务器&#xff0c;为客户端分配地址&#xff0c;并对分配地址的客户端进行入网管控。 &#xff08;*&#xff09;可选 强制入网…

【计算机毕设】SpringBoot海滨体育馆管理系统设计与实现 - 源码免费(私信领取)

免费领取源码 &#xff5c; 项目完整可运行 &#xff5c; v&#xff1a;chengn7890 诚招源码校园代理&#xff01; 1. 引言 体育馆作为重要的体育场馆&#xff0c;承担着举办体育赛事、健身活动和文化演出等多种功能。为了提高体育馆的管理效率和服务质量&#xff0c;本项目旨在…

DASK==python并行计算

文档10 Minutes to Dask — Dask documentation demo代码 import numpy as np import pandas as pd import dask.dataframe as dd import dask# 设置调度器为多线程 dask.config.set(schedulerthreads) # 创建一个示例的Pandas DataFrame index pd.date_range("2021-09…

SpringBoot轻松解决Excel导入导出功能

前言 在日常的开发工作中&#xff0c;Excel 文件的读取和写入是非常常见的需求&#xff0c;特别是在后台管理系统中更为频繁&#xff0c;基于传统的方式操作excel通常比较繁琐&#xff0c;EasyExcel 库的出现为我们带来了更简单、更高效的解决方案。本文将介绍 EasyExcel 库的…

Linux C/C++ main函数

main函数有三个参数&#xff1a;argc、argv、envp int main(int argc,char*argv[],char*envp) {return 0; } //argc 存放了程序参数个数&#xff0c;包括程序本身 //argv 字符串数组&#xff0c;存放了每个参数的值&#xff0c;包括程序本身 //envp 字符串数组&#xff0c;存放…

Java后端代码框架包设计-什么是Domain,BO,VO?我们改如何区分和定义?

我们先来看看一个项目的代码结构,如下图: 1.定义包名用domain这个单词是什么含义 在Java中,domain 这个单词通常用于表示应用程序的“领域模型”(Domain Model)或“领域层”(Domain Layer)。领域模型是描述系统业务逻辑和规则的对象集合,它通常包含实体(Entities)、…