当前位置: 首页 > news >正文

【C语言】“vid”Microsoft Visual Studio安装及应用(检验内存泄露)

文章目录

  • 前言
  • 安装包获取
  • 配置VLD
  • 完成


前言

我们在写代码时往往容易存在内存泄漏的情况,所以存在这样一个名为VLD的工具用来检验内存泄漏,现在我来教大家安装一下

安装包获取

vld下载网址:https://github.com/KindDragon/vld/releases/tag/v2.5.1
(可能不流畅)

所以我为大家提供了百度网盘链接:https://pan.baidu.com/s/1oimzadVJRuCffae7aIm4Og?
提取码:uiqq

这里面出了这个程序还有一个很好用的小软件Everything,等等要用

在这里插入图片描述

我们找到下载的应用程序,双击打开
在这里插入图片描述
在这里插入图片描述

接受并下一步
在这里插入图片描述
记住这里的安装位置,一般会默认安装到C盘的X86文件夹里,并且新建一个文件夹
在这里插入图片描述
之后一直NEXT直到安装完成

但我们直接使用会报错

在这里插入图片描述

配置VLD

我们用Everything搜索 Microsoft Visual Studio 点击第一个什么都没有的文件夹,

在这里插入图片描述

然后按 Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519 的顺序找到目标文件夹

在这里插入图片描述

同时我们利用之前的记录的VLD的地址去找它所在的文件夹,同样也可以用EverythingVisual Leak Detector去找到目标文件夹

第一步
Visual Leak Detector文件夹里include的文件全部赋值到Microsoft Visual Studio\2022目标文件夹里的include文件夹里

在这里插入图片描述
在这里插入图片描述

第二步

再将Visio Leak Detectorlib文件夹中的两个**.lib文件分别放在VS2022lib文件夹中:把Win32中的vld.lib文件放到x86中,Win64中的的vld.lib文件放到x64**中即可

在这里插入图片描述
在这里插入图片描述

完成

再次运行代码,<vld.h>不再报错,ctrl+F5即可

在这里插入图片描述
如果没有出现可以在 项目 -> 属性 面板栏里进行如下操作,
在这里插入图片描述


这里把笔者用到的代码放在这里,我们调出调试结果,直接翻到最后

#define _CRT_SECURE_NO_WARNINGS  1
#pragma warning(disable:6031)
#include<stdio.h>
#include<stdlib.h>
#include<vld.h>int main()
{//创建空间int** arr = (int**)malloc(3 * (sizeof(int*)));for (int i = 0; i < 3; i++){arr[i] = (int*)malloc(5 * sizeof(int));}//设定值for (int i = 0; i < 3; i++){for (int j = 0; j < 5; j++){arr[i][j] = 5 * i + j;}}//输出for (int i = 0; i < 3; i++){for (int j = 0; j < 5; j++){printf("%-5d ", arr[i][j]);}printf("\n");}//释放空间//for (int i = 0; i < 3; i++)//{//	free(arr[i]);//	arr[i] = NULL;//}//free(arr);//arr = NULL;return 0;
}

可以发现确实说出了这里有4处内存泄漏,分别是 **arr 和 三个 *arr
在这里插入图片描述

相关文章:

【C语言】“vid”Microsoft Visual Studio安装及应用(检验内存泄露)

文章目录 前言安装包获取配置VLD完成 前言 我们在写代码时往往容易存在内存泄漏的情况&#xff0c;所以存在这样一个名为VLD的工具用来检验内存泄漏&#xff0c;现在我来教大家安装一下 安装包获取 vld下载网址&#xff1a;https://github.com/KindDragon/vld/releases/tag/…...

Accuracy准确率,Precision精确率,Recall召回率,F1 score

真正例和真反例是被正确预测的数据&#xff0c;假正例和假反例是被错误预测的数据。然后我们需要理解这四个值的具体含义&#xff1a; TP&#xff08;True Positive&#xff09;&#xff1a;被正确预测的正例。即该数据的真实值为正例&#xff0c;预测值也为正例的情况&#xf…...

系统架构最佳实践 -- 智慧图书管理系统架构设计

随着数字化时代的到来&#xff0c;智慧图书管理系统在图书馆和机构中扮演着重要的角色。一个优秀的图书管理系统不仅需要满足基本的借阅管理需求&#xff0c;还需要具备高效的性能、良好的扩展性和稳定的安全性。本文将讨论智慧图书管理系统的架构设计与实现&#xff0c;以满足…...

网络基础三——IP协议补充和Mac帧协议

全球网络及网段划分的理解 ​ 根据国家组织地区人口综合评估进行IP地址范围的划分&#xff1b; ​ 假设前8位用来区分不同的国家&#xff0c;国际路由器负责全球数据传输&#xff0c;子网掩码为IP/8&#xff1b;次6位区分不同的省份&#xff0c;国内路由器负责全国数据的传输…...

人工智能——深度学习

4. 深度学习 4.1. 概念 深度学习是一种机器学习的分支&#xff0c;旨在通过构建和训练多层神经网络模型来实现数据的高级特征表达和复杂模式识别。与传统机器学习算法相比&#xff0c;深度学习具有以下特点&#xff1a; 多层表示学习&#xff1a;深度学习使用深层神经网络&a…...

postgresql uuid

示例数据库版本PG16&#xff0c;对于参照官方文档截图&#xff0c;可以在最上方切换到对应版本查看&#xff0c;相差不大。 方法一&#xff1a;自带函数 select gen_random_uuid(); 去掉四个斜杠&#xff0c;简化成32位 select replace(gen_random_uuid()::text, -, ); 官网介绍…...

【azure笔记 1】容器实例管理python sdk封装

容器实例管理python sdk封装 测试结果 说明 这是根据我的需求写的&#xff0c;所以有些参数是写死的&#xff0c;比如cpu核数和内存&#xff0c;你可以根据你的需要自行修改。前置条件&#xff1a; 当前环境已安装python3.8以上版本和azure cli并且已经登陆到你的账户 依赖安…...

Nestjs 中定义既可以捕获错误(Error)和又可以异常(Exception)的过滤器

Nestjs 中,使用基于 HttpException 定义过滤器的话,只能捕获 Http 带状态码(statusCode)的 Exception,不能捕获 throw new Error(‘xxx’) 抛出的错误。 以下是使用实现 ExceptionFilter 接口定义的一个不特定于平台(express 或 fastify,即无论使用这两个web服务框架的…...

GitHub 仓库 (repository) Branch - SSH clone URL - Clone in Desktop - Download ZIP

GitHub 仓库 [repository] Branch - SSH clone URL - Clone in Desktop - Download ZIP 1. Branch2. SSH clone URL3. Clone in Desktop4. Download ZIPReferences 1. Branch 显示当前分支的名称。从这里可以切换仓库内分支&#xff0c;查看其他分支的文件。 2. SSH clo…...

Training - 使用 WandB 配置 可视化 模型训练参数

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://blog.csdn.net/caroline_wendy/article/details/137529140 WandB (Weights&Biases) 是轻量级的在线模型训练可视化工具&#xff0c;类似于 TensorBoard&#xff0c;可以帮助用户跟踪…...

N1922A是德科技N1922A功率传感器

181/2461/8938产品概述&#xff1a; N192XA 传感器是首款通过将直流参考源和开关电路集成到功率传感器中来提供内部调零和校准的传感器。此功能消除了与使用外部校准源相关的多个连接&#xff0c;从而最大限度地减少了连接器磨损、测试时间和测量不确定性。 连接到 DUT 时进行…...

最简洁的Docker环境配置

Docker环境配置 Docker 是一个开源的应用容器引擎&#xff0c;让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中&#xff0c;然后发布到任何流行的 Mac、Linux或Windows操作系统的机器上&#xff0c;也可以实现虚拟化。容器是完全使用沙箱机制&#xff0c;相互之间不…...

Docker内更新Jenkins详细讲解

很多小伙伴在Docker中使用Jenkins时更新遇到困难&#xff0c;本次结合自己的实际经验&#xff0c;详细讲解。根据官网Jenkins了解以下内容&#xff1a; 一、Jenkins 是什么? Jenkins是一款开源 CI&CD 软件&#xff0c;用于自动化各种任务&#xff0c;包括构建、测…...

基于遗传模拟退火混合优化算法的车间作业最优调度matlab仿真,输出甘特图

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 4.1遗传算法与模拟退火算法简介 4.2 GSAHO算法应用于JSSP 5.完整程序 1.程序功能描述 车间作业调度问题&#xff08;Job Shop Scheduling Problem, JSSP&#xff09;是一种典型的生产调度问…...

Mac 安装 brew brew cask 遇到的问题以及解决办法

安装Homebrew和Homebrew Cask是在Mac上管理软件包的常用方法。虽然大多数情况下安装这两个工具是比较简单的&#xff0c;但有时候也可能遇到一些问题。下面是一些常见的问题以及解决办法&#xff1a; 问题1&#xff1a;无法安装Homebrew 解决办法&#xff1a; 1.确保你的Mac已连…...

Vitalik Buterin香港主旨演讲:协议过去10年迅速发展,但存在效率、安全两大问题

2024 香港 Web3 嘉年华期间&#xff0c;以太坊联合创始人 Vitalik Buterin 在由DRK Lab主办的“Web3 学者峰会 2024”上发表主旨演讲《Reaching the Limits of Protocol Design》。 他介绍到&#xff0c;2010年代&#xff0c;基于基本密码学的协议是哈希、签名。随后&#xff…...

【leetcode】大数相加

题目链接&#xff1a;415. 字符串相加 - 力扣&#xff08;LeetCode&#xff09; 计算两个大数的和&#xff0c;从末尾开始逐个字符相加&#xff0c;记录进位 class Solution { public:string addStrings(string num1, string num2) {int i num1.size() - 1, j num2.size() …...

数据检索的优化之道:B树与B+树的深度解析与应用探索

1、引言 在信息时代&#xff0c;数据检索的速度和效率对于任何依赖数据处理的系统来说都至关重要。无论是在线搜索引擎、数据库管理系统还是文件存储系统&#xff0c;快速准确地检索所需数据都是核心需求。传统的线性数据结构在处理大规模数据集时往往力不从心&#xff0c;因此…...

替换服务器的SSL证书有什么影响?

SSL证书是保护网站和用户数据安全的重要组成部分。然而&#xff0c;出于一些原因&#xff0c;网站管理员可能需要替换服务器的SSL证书。替换SSL证书可能会对网站的运行和安全产生一些影响。本文旨在介绍替换服务器SSL证书的影响和相关注意事项&#xff0c;帮助网站管理员更好地…...

java中可变参数和简单游戏

可变参数&#xff1a; 就是一种特殊形参&#xff0c;定义在方法&#xff0c;构造器的形参列表中&#xff0c;格式是&#xff1a;数据类型...参数名称 可变参数的好处&#xff1a; 灵活的接收数据 特点&#xff1a;可以不传数据给它&#xff0c;可以传一个数据或者多个数据给它…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂&#xff08;如抗体、抑制肽&#xff09;在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上&#xff0c;高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术&#xff0c;但这类方法普遍面临资源消耗巨大、研发周期冗长…...

【JVM】- 内存结构

引言 JVM&#xff1a;Java Virtual Machine 定义&#xff1a;Java虚拟机&#xff0c;Java二进制字节码的运行环境好处&#xff1a; 一次编写&#xff0c;到处运行自动内存管理&#xff0c;垃圾回收的功能数组下标越界检查&#xff08;会抛异常&#xff0c;不会覆盖到其他代码…...

深入理解JavaScript设计模式之单例模式

目录 什么是单例模式为什么需要单例模式常见应用场景包括 单例模式实现透明单例模式实现不透明单例模式用代理实现单例模式javaScript中的单例模式使用命名空间使用闭包封装私有变量 惰性单例通用的惰性单例 结语 什么是单例模式 单例模式&#xff08;Singleton Pattern&#…...

数据链路层的主要功能是什么

数据链路层&#xff08;OSI模型第2层&#xff09;的核心功能是在相邻网络节点&#xff08;如交换机、主机&#xff09;间提供可靠的数据帧传输服务&#xff0c;主要职责包括&#xff1a; &#x1f511; 核心功能详解&#xff1a; 帧封装与解封装 封装&#xff1a; 将网络层下发…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)

🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...

AI,如何重构理解、匹配与决策?

AI 时代&#xff0c;我们如何理解消费&#xff1f; 作者&#xff5c;王彬 封面&#xff5c;Unplash 人们通过信息理解世界。 曾几何时&#xff0c;PC 与移动互联网重塑了人们的购物路径&#xff1a;信息变得唾手可得&#xff0c;商品决策变得高度依赖内容。 但 AI 时代的来…...

保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek

文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama&#xff08;有网络的电脑&#xff09;2.2.3 安装Ollama&#xff08;无网络的电脑&#xff09;2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...

LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf

FTP 客服管理系统 实现kefu123登录&#xff0c;不允许匿名访问&#xff0c;kefu只能访问/data/kefu目录&#xff0c;不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...

解析奥地利 XARION激光超声检测系统:无膜光学麦克风 + 无耦合剂的技术协同优势及多元应用

在工业制造领域&#xff0c;无损检测&#xff08;NDT)的精度与效率直接影响产品质量与生产安全。奥地利 XARION开发的激光超声精密检测系统&#xff0c;以非接触式光学麦克风技术为核心&#xff0c;打破传统检测瓶颈&#xff0c;为半导体、航空航天、汽车制造等行业提供了高灵敏…...

Python爬虫实战:研究Restkit库相关技术

1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的有价值数据。如何高效地采集这些数据并将其应用于实际业务中,成为了许多企业和开发者关注的焦点。网络爬虫技术作为一种自动化的数据采集工具,可以帮助我们从网页中提取所需的信息。而 RESTful API …...