Visual Stadio使用技巧

news2024/11/18 3:23:42

C语言调试技巧

Debug 和 Release 的介绍

Debug:通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试(可调试)。
Release:通常称为发布版本,它往往时进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好的使用(不能调试),测试测得也是发布版本。
注:debug和release在功能上也会进行优化。
通常在代码编译完成以后,会生成exe文件,在工程路径下,在x64当中,效果如下:

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

debug和release具体区别,这段代码在debug中会已知执行,在release中不会,但是我这边测试时,两者都能正常执行,后续再看:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main() 
{
	int i = 0;
	int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };
	for (i = 0;i <= 12; i++)
	{
		printf("haha\n");
		arr[i] = 0;
	}
	system("pause");
}

C语言编程规范

优秀的代码:
	1. 代码运行正常;
	2. bug少;
	3. 效率高;
	4. 可读性高;
	5. 可维护性高;
	6. 注释清晰;
	7. 文档齐全。
	
常见的coding技巧
	1. 使用assert
	2. 尽量使用const
	3. 养成良好的编码风格
	4. 调价必要的注释
	5. 避免编码的陷阱

VS 快捷键

快捷键功能
F5和F9配合使用、调试
F9切换断点
F10逐过程调试(逐行调试)
F11逐语句过程调试(走得会更细)
CTRL + F5开始执行,不调试
Shift + F5停止调试
Alt + 上下箭头向上向下移动代码行
Shift + Alt + 上下箭头多行同时插入
Ctrl + h替换
Alt + 鼠标左键在任意位置写入
Ctrl + D复制当前行至下一行
Ctrl + L将当前行剪切
Ctrl + ~在VS中打开终端
Ctrl + J智能提示
Ctrl + R选中需要调试的某一段代码,然后按Ctrl + R进行调试
Ctrl + k + c区域注释
Ctrl + k + u清除区域注释
Ctrl + Shift + v调出粘贴板,来选择粘贴内容
Ctrl + -快速回到上次编辑位置
Ctrl + Shift + 空格快速查看函数参数
Ctrl + Shift + F9删除全部断点
Ctrl + Enter在上方插入空行
Ctrl + Shift + Enter在下方插入空行
Ctrl + u选中内容全部小写
Ctrl + Shift + u选中内容全部大写
Ctrl + k +d快速对齐代码
Ctrl + Shift + L删除当前行
Ctrl + Shift + W关闭当前文件

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

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

相关文章

照片能做真人三维建模?

易模App开启真人手办定制以来&#xff0c;许多用户朋友在积极尝试&#xff0c;更有用户反馈了一种可以使模型成果更精致的建模方式——螺旋连拍。 螺旋连拍使用易模App人像模式自定义方法&#xff0c;上传拍好的真人照片即可AI建模&#xff0c;操作方法简单。那么如何拍摄用于建…

9月5日上课内容 第一章 NoSQL之Redis配置与优化

本章结构 关系型数据库和非关系型数据库 概念介绍 ●关系型数据库&#xff1a; 关系型数据库是一个结构化的数据库&#xff0c;创建在关系模型&#xff08;二维表格模型&#xff09;基础上&#xff0c;一般面向于记录。 SQL 语句&#xff08;标准数据查询语言&#xff09;就是…

【TSN】(一)中英译文

【Two Stream Net】 一&#xff0c;双语翻译 文章目录 【Two Stream Net】Abstract1 Introduction1.1 Related work 2 Two-stream architecture for video recognition3 Optical flow ConvNets3.1 ConvNet input configurations3.2 Relation of the temporal ConvNet archite…

数据可视化、BI和数字孪生软件:用途和特点对比

在现代企业和科技领域&#xff0c;数据起着至关重要的作用。为了更好地管理和理解数据&#xff0c;不同类型的软件工具应运而生&#xff0c;其中包括数据可视化软件、BI&#xff08;Business Intelligence&#xff09;软件和数字孪生软件。虽然它们都涉及数据&#xff0c;但在功…

制药企业设备管理常见问题和措施

制药企业的设备管理是确保生产质量和合规性的关键环节。然而&#xff0c;许多制药企业在设备管理方面面临各种常见问题。本文将探讨这些问题&#xff0c;并提供相应的措施&#xff0c;包括PreMaint设备健康管理平台的应用&#xff0c;以帮助企业改进其设备管理实践。 问题1&…

Si3262 一款低功耗刷卡+触摸+mcu 三合一SOC芯片

Si3262是-款高度集成的低功耗soC芯片&#xff0c;其集成了基于RISC-V 核的低功耗MCU和工作在13.56MHz的非接触式读写器模块。 该芯片ACD模式下刷卡距离可达4-5cm&#xff08;天线决定&#xff09;&#xff0c;适用于智能门锁&#xff0c;电子锁&#xff0c;柜锁&#xff0c;桑拿…

伪微分反馈控制(Pesudo-Drivative Feedback Control——PDF)

运动控制-单轴伺服控制带宽分析&#xff08;二&#xff09; - 知乎 (zhihu.com) 伪微分反馈控制_百度百科 (baidu.com) 伺服电机控制器的参数整定_老马过河hhh的博客-CSDN博客 伪微分PIIP控制_yukee10的博客-CSDN博客

【前端】React项目初体验

React介绍 React 是一个非常流行的 JavaScript 前端框架&#xff0c;它为开发人员提供了一种快速构建高质量用户界面的方式。以下是使用 React 构建项目的初体验&#xff1a; 安装 React 和相关依赖项 使用 React 开发项目需要先安装一些必需的依赖项&#xff0c;包括 Node.…

人大与加拿大女王大学金融硕士——与其羡慕他人,不如充实自己

很喜欢的一段话:“优秀的生活状态&#xff0c;不是仰望别人&#xff0c;而是把自己活成一道风景。只要自己变优秀了。其他的事情都会跟着好起来。无论何时何地&#xff0c;与其羡慕他人&#xff0c;不如花时间充实自己。”人大女王金融硕士&#xff0c;助你充实自己&#xff0c…

grid弹性布局 设置宽高一致

效果图如下&#xff1a; 例子&#xff1a;设置每行四列的弹性布局&#xff0c;每个盒子宽高相同&#xff0c;间距为10px .left_list{display: grid;grid-gap: 10px 10px;grid-template-columns: repeat(4,1fr);.list_item{height: 0;padding-bottom:100%;/*高度设置为0&#…

Docker部署EMQX

1、简介 EMQ X (Erlang/Enterprise/Elastic MQTT Broker) 是基于 Erlang/OTP 平台开发的开源物联网 MQTT 消息服务器。 Erlang/OTP是出色的软实时 (Soft-Realtime)、低延时 (Low-Latency)、分布式 (Distributed)的语言平台。 MQTT 是轻量的 (Lightweight)、发布订阅模式 (Pu…

远程访问服务器JupyterLab的配置方法

远程访问服务器JupyterLab的配置方法 环境及工具注意 基本步骤生成密码生成并修改配置文件后台运行jupyter后台关闭 其实就是在服务器运行JupyterLab&#xff0c;然后在本地浏览器访问 环境及工具 服务器&#xff1a;Ubuntu 16.04 本机&#xff1a; windows 11 个人使用终端神…

Spring中Endpoint、HasFeatures、NamedFeature和Actuator的关系及实现原理

文章目录 1. 关系缘由2. Actuator简介及简单使用3. Endpoint和Actuator的关系4. Endpoint和HasFeatures的关系5. Endpoint和HasFeatures原理解析5.1 Endpoint的实现原理5.2 HasFeatures的实现原理 6. 个人闲谈 1. 关系缘由 我们经常可以在Springboot中看到Endpoint注解&#x…

Vue2进阶篇学习笔记

文章目录 Vue2进阶学习笔记前言1、Vue脚手架学习1.1 Vue脚手架概述1.2 Vue脚手架安装1.3 常用属性1.4 插件 2、组件基本概述3、非单文件组件3.1 非单文件组件的基本使用3.2 组件的嵌套 4、单文件组件4.1 快速体验4.2 Todo案例 5、浏览器本地存储6、组件的自定义事件6.1 使用自定…

伦敦银线性回归分析

在金融市场中&#xff0c;商品的价格一段时间内总是会围绕着一条线性回归趋势线&#xff0c;在两侧波动并沿着这条趋势线方向发展。当价格在波动过程中偏离趋势线距离太大了&#xff0c;就会再次向趋势线靠拢。 波浪理论认为商品的价格走势都是波浪式发展的&#xff0c;无论处于…

入门力扣自学笔记280 C++ (题目编号:1123)(二分查找)(多看看)

2594. 修车的最少时间 题目&#xff1a; 给你一个整数数组 ranks &#xff0c;表示一些机械工的 能力值 。ranksi 是第 i 位机械工的能力值。能力值为 r 的机械工可以在 r * n2 分钟内修好 n 辆车。 同时给你一个整数 cars &#xff0c;表示总共需要修理的汽车数目。 请你返…

Python IDLE使用方法详解(包含常用快捷键)

在安装 Python后&#xff0c;会自动安装一个 IDLE&#xff0c;它是一个 Python Shell (可以在打开的 IDLE 窗口的标题栏上看到&#xff09;&#xff0c;程序开发人员可以利用 Python Shell 与 Python 交互。 本节将以 Windows7 系统中的 IDLE 为例&#xff0c;详细介绍如何使用…

React Hook之useContext

1. 什么是useContext React官方解释&#xff1a;useContext 是一个 React Hook&#xff0c;可以让你读取和订阅组件中的 context&#xff08;React官方文档地址&#xff09;。 通俗的讲&#xff0c;useContext的作用就是&#xff1a;实现组件间的状态共享&#xff0c;主要应用场…

ESP32-C3的存储器类型

本文主要参考ESP-IDF编程指南&#xff0c;一点小记录。 ESP32-C3的存储器有&#xff1a; ESP-IDF 区分了指令总线&#xff08;IRAM、IROM、RTC FAST memory&#xff09;和数据总线 (DRAM、DROM)。 内部SRAM的一部分是指令RAM(IRAM)。那为什么要把指令放在RAM中&#xff0c;就是…

工厂车间安灯呼叫系统实现生产过程的可视化管理

工厂生产管理中生产效率低下导致现场管理困难。生产线问题无法及时处理和解决&#xff0c;导致在制品堆积严重。此外&#xff0c;对加工进度的掌握和生产现场状态的监控也存在困难&#xff0c;可控性差。设备故障无法及时处理&#xff0c;造成等待浪费&#xff0c;进一步降低了…