VS Code 如何搭建C/C++开发环境
目录
1.VS Code是什么
2. VS Code的下载和安装
2.1 下载和安装
2.2.1 下载
2.2.2 安装
2.2 环境的介绍
2.3 安装中文插件
3. VS Code配置C/C++开发环境
3.1 下载和配置MinGW-w64编译器套件
3.1.1 下载
3.1.2 配置
3.2 安装C/C++插件
3.3 重启VSCode
4. 在VSCode上编写C语言代码并编译成功
4.1 打开文件夹
4.2 新建C语言文件,编写C语言代码
4.3 设置C/C++编译的选项: c_cpp_properties.json
4.4 创建执行任务: tasks.json
4.5 编译+执行
4.5.1 编译
4.5.2 执行
4.6 再写一个代码怎么办?
4.6.1 方法一
4.6.1.1 新建文件
4.6.1.2 执行
4.6.2 方法二
4.6.2.1 新建文件夹2025_02_17_test
4.6.2.2. 打开文件夹选择2025_02_17_test
4.6.2.3 编写代码
4.6.2.4 拷贝配置文件
4.5.2.5 编译+执行
4.7 一个工程中有多个.c文件怎么办?
4.7.1 创建文件
4.7.2 编写代码
4.7.3 修改配置文件tasks.json并验证结果
4.7.3.1 效果一
4.7.3.2 效果二
4.7.4 编译 + 运行
5. VSCode 怎么写C++的代码呢?
5.1 创建文件,编写代码
5.2配置g++.exe为编译器
5.3 生成C++源文件编译的tasks信息
5.4 编译 + 执行
6. VSCode的调试
6.1 创建launch.json文件
6.2 修改配置文件
6.3 开始调试
1.VS Code是什么
Visual Studio Code 简称 VS Code,是一款跨平台的、免费且开源的现代轻量级代码编辑器,支持几乎主流开发语言的语法高亮、智能代码补全、自定义快捷键、括号匹配和颜色区分、代码片段提示、代码对比等特性、也拥有对git的开箱即用的支持。同时、它还支持插件扩展,通过丰富的插件,用户能获得更多高效的功能。
一般有稳定版和体验版两个版本。
2. VS Code的下载和安装
2.1 下载和安装
2.2.1 下载
下载地址:Visual Studio Code - Code Editing. RedefinedVisual Studio Code redefines AI-powered coding with GitHub Copilot for building and debugging modern web and cloud applications. Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows.https://code.visualstudio.com/
迅雷链接:
迅雷云盘迅雷云盘https://pan.xunlei.com/s/VOJ4TaX7OG6cK489gNBNqnPvA1?pwd=fddh
1. 点击Download
2. 点击Windows下载
3.下载中,等待任务栏下载完成即可
2.2.2 安装
1. 右击以管理员身份打开我们的可执行程序
2. 点击同意此协议,然后下一步
3. 更改路径
在这里可以更改软件的安装位置,我呢喜欢装在D盘,你也可以自己选择。然后点击下一步。
4. 点击下一步
5. 选择项
可以全部勾选上,至于快捷方式,看个人自己,然后点击下一步。
6. 安装
7. 等待安装完成
8. 点击完成
此时我们的VS Code就安装完成了。
2.2 环境的介绍
打开我们安装好的VS Code软件。
2.3 安装中文插件
毕竟这个VSCode默认是英文的,我们使用不习惯的话,可以安装中文插件,将VSCode的界面汉化的,
下载完成点击右下角.重启一下即可。
再次打开我们就汉化好了。
3. VS Code配置C/C++开发环境
VSCode 安装好之后,我们还是要知道,VSCode毕竟是一个高级的编辑器,只能用来写C/C++代码,不能直接编译代码。所以,如果我们要能使用VSCode搭建C/C++的编译和调试环境,还必须有编译器使用。为了方便,我们就使用 MinGw-w64, MinGw-w64 移植到windows平台的一个gcc编译器,使用起来也是非常方便的。
3.1 下载和配置MinGW-w64编译器套件
3.1.1 下载
下载地址:https://sourceforge.net/projects/mingw-w64/files/https://sourceforge.net/projects/mingw-w64/files/
建议选择这个版本。
迅雷链接:
迅雷云盘迅雷云盘https://pan.xunlei.com/s/VOJ9ibzwlQ452IPLeoQ4jTAdA1?pwd=k4iw#接下来就是解压,解压出来后,进到文件夹中,拷贝mingw64这个文件夹到一个最简单的目录下,路径的名字不要有中文、空格、特殊字符等。
此时mingw64的编译器的路径就是: D : \mingw64
3.1.2 配置
配置MinGW64:
在windows电脑上,按win+s快捷键,或者直接在搜索框中搜索:环境变量
进入系统属性,点击【环境变量】
修改path环境变量
添加环境变量
添加的是mingw64的bin目录,我的我是放在了D盘下的。
然后一路确定下去即可。
验证一下:
在windows电脑上打开cmd窗口,输入:gcc --version或者 where gcc,要是能看到下面的界面,就说明minGW-w64的编译器套件依旧配置好了。
到此为止,Windows版本的gcc/g++编译器已经配置好了,如果你会使用gcc/g++命令行编译代码的话,已经可以正常使用了,但是我们如果使用VSCode来写代码,并且完成编译,还是不够的。
3.2 安装C/C++插件
要在VSCode上编译代码,还得配置C/C++插件,再次在扩展中搜索C/C++,点击安装。
3.3 重启VSCode
这一步很重要,让前面的设置生效,要不然后面会出现问题。
4. 在VSCode上编写C语言代码并编译成功
4.1 打开文件夹
在VSCode上写代码都是首先要打开文件夹的,这样也方便管理代码和编译器产生的可执行程序,和VSCode生成的配置文件等。
在写代码之前,我们要想清楚要把代码放在什么地方管理,比如在F盘下创建一个Code文件夹,用来管理我所写的代码,然后里面再创建一个文件夹,存放我的一个工程文件。
在我们写代码前先创建好文件夹,然后在VSCode中打开所新建的文件夹。
选择我们刚刚创建的文件夹。
然后点击信任此作者
然后在左边就能看见我的文件夹了,名字被大写了,这是VSCode的一个特点。
4.2 新建C语言文件,编写C语言代码
创建C语言文件:
编写代码:
代码写好了,接下来我们要编译代码。
4.3 设置C/C++编译的选项: c_cpp_properties.json
鼠标点在.c的源文件内部,按ctrl+shift+p快捷键,在弹出的界面中选择:【C/C++:编辑配置(UI)】,然后进入设置页面。(找不到了可以搜一下)
选择编译器:
点开小三角,选择mingw64下的bin目录下的gcc.exe,因为我还装了VS2019,所以选项很多。
IntelliSense模式配置:
当我们配置好之后旁边会多出一个.vscode的文件。
这个里面就指定了我们用的编译器是什么样的编译器,windows下的sdk是什么样的,以及C语言和C++编译的标准,代码提示的模式是什么。
4.4 创建执行任务: tasks.json
要编译代码,我们接下来,在终端中:配置任务:
在弹出的页面中,选择【C/C++:gcc.exe 生成活动文件】
因为我这里还装了vs2019,所以有第一个,这里我们只需要选择第二个即可。
这时就生成了一个tasks.json文件,这个文件是专门是用来执行代码的编译任务的。
4.5 编译+执行
4.5.1 编译
完成上述的步骤,我们就准备好了所有的准备,接下来就可以编译并生成可执行程序了。
具体操作如下:
- 鼠标点在要编译的C语言代码中
- 然后执行【终端】-> 【运行生成任务】
如果一切正常的话,我们就能看到【终端】提示,就说明编译成功了。
然后这个时候旁边也就生成了可执行程序.exe文件了。
4.5.2 执行
按键盘的ctrl+`快捷键,打开VSCode自带的终端,就可以运行代码了。
这是输入:.\可执行程序的名字,即可以执行代码。
4.6 再写一个代码怎么办?
4.6.1 方法一
4.6.1.1 新建文件
如果你的代码还是单独的一个c文件,在当前打开文件夹就可以编写,那直接在当前打开的文件夹中新建.c源文件,编写代码,对当前的代码执行和上面一样的操作。
4.6.1.2 执行
4.6.2 方法二
如果你要写的代码需要单独文件夹管理,那就再次打开新的文件夹来编写代码,编译和执行了。
比如新的代码放在2025_02_17_test下面。
4.6.2.1 新建文件夹2025_02_17_test
4.6.2.2. 打开文件夹选择2025_02_17_test
首先关闭掉之前打开的文件
然后打开新的文件
然后点击信任此作者
4.6.2.3 编写代码
4.6.2.4 拷贝配置文件
这样时候我们就可以看到配置文件了,我们只需拷贝之前配置的就可以,不需要自己再次配置,拷贝过来啥都不需要修改。
4.5.2.5 编译+执行
4.7 一个工程中有多个.c文件怎么办?
4.7.1 创建文件
假设我们在一个工程中,下面有多个文件需要编译,这个我就直接在上次的工程中创建了,效果是一样的。
4.7.2 编写代码
现在只有一个main函数,然后main函数中调用别的文件中的函数。
4.7.3 修改配置文件tasks.json并验证结果
要能够编译一个文件中的多个文件,需要定制tasks.json文件的内容
编译多个源文件代码:
- 通过把"${file}"修改为"${workspaceFolder}\\*.c",可以构建当前工作区的所有C文件。
- 通过把"${file}"修改为"${workspaceFolder}\\*.cpp",可以构建当前工作区的所有C++文件。
修改编译输出的文件名:
- 通过把"${fileDirname}\\${fileBasenameNoExtension}.exe",修改为:"${workspaceFolder}\\myProgram.exe",可以把编译输出的文件名硬编码为myProgram.exe,而不是与C文件同名。效果看4.7.3.1
- 通过把"${fileDirname}\\${fileBasenameNoExtension}.exe",修改为:"${workspaceFolder}\\${workspaceRootFolderName}.exe",可以把编译输出的文件名为:打开的工作区文件夹名字。效果看4.7.3.2
4.7.3.1 效果一
4.7.3.2 效果二
4.7.4 编译 + 运行
5. VSCode 怎么写C++的代码呢?
5.1 创建文件,编写代码
5.2配置g++.exe为编译器
鼠标点在.cpp的源文件内部,按ctrl+shift+p快捷键,在弹出的界面中选择:【C/C++:编辑配置(UI)】,然后进入设置页面。
找到配置名称,这里我们再添加一个C++的配置,点击【添加配置】
输入C++,当然你也可以根据自己的喜好命名,然后点击确定。
编译器路径,根据自己的mingw64的路径,g++.exe。
代码提示:
这时再c_cpp_propertise.json文件中就能看到一个名字叫:C++配置。
5.3 生成C++源文件编译的tasks信息
点中.cpp文件,菜单中在终端下配置任务。
选择g++.exe 生成活动文件
这个时候就在tasks.json中生成了C++的编译选项了
这个时候如果想修改的话前面也写了,按照前面的修改即可,默认也行。
5.4 编译 + 执行
在弹出的框中选择g++
然后运行
6. VSCode的调试
前面的都是如何去编译代码,当我们生成一个可执行程序的时候,如果遇到运行时问题,我们就要想办法调试代码,那么VSCode如何调式代码呢?
其实在VSCode上调试关键也是依赖一个配置文件叫:launch.json。
6.1 创建launch.json文件
首先点击调试,创建launch.json文件,然后选择【C++(GDB/LLDB)】
添加配置
选择C/C++ gdb启动
6.2 修改配置文件
- 修改"program"为:"${workspaceFolder}\\${workspaceRootFolderName}.exe" ,这个内容和tasks.json中的可执行文件的路径匹配。
- 修改"miDebuggerPath"为:"D:\\mingw64\\bin\\gdb.exe",这个路径根据自己实际方MinGW-w64的文件路径调整。(图片中的program有问题,参考这段文字中的配置)
6.3 开始调试
当launch.json文件生成后,我们只要打断点开始调试就行。
调试的快捷键和VS系列的IDE是一样的,如:
- F9 -- 打断点/取消断点
- F5 -- 启动调试
- F11 -- 逐语句调试
- F10 -- 逐过程调试
启动调试后,也是可以使用监视窗口查看变量等程序执行过程中的信息。
相关文章:
VS Code 如何搭建C/C++开发环境
目录 1.VS Code是什么 2. VS Code的下载和安装 2.1 下载和安装 2.2.1 下载 2.2.2 安装 2.2 环境的介绍 2.3 安装中文插件 3. VS Code配置C/C开发环境 3.1 下载和配置MinGW-w64编译器套件 3.1.1 下载 3.1.2 配置 3.2 安装C/C插件 3.3 重启VSCode 4. 在VSCode上编写…...
DeepSeek、微信、硅基流动、纳米搜索、秘塔搜索……十种不同方法实现DeepSeek使用自由
为了让大家实现 DeepSeek 使用自由,今天分享 10 个畅用 DeepSeek 的平台。 一、官方满血版:DeepSeek官网与APP 首推,肯定是 DeepSeek 的官网和 APP,可以使用满血版 R1 和 V3 模型,以及联网功能。 网址: htt…...
【Java】Enum类的常用方法、实现接口及其实际应用
Enum类的常用方法 package com.star.enum03;/** * author : Starshine */public class TestSeason { //这是一个main方法,是程序的入口: public static void main(String[] args) { //用enum关键字创建的Season枚举类上面的父类是ÿ…...
Linux | 进程控制(进程终止与进程等待)
文章目录 Linux | 进程控制 — 进程终止 & 进程等待1、进程终止进程常见退出方法1.1退出码基本概念获取退出码的方式常见退出码约定使用场景 1.2 strerror函数 & errno宏1.3 _exit函数1.4_exit和exit的区别1.4.1 所属头文件与函数原型1.4.2 执行过程差异**结合现象分析…...
三、tsp学习笔记——屏幕移植
泰山派-6寸猫屏转接板 - 立创开源硬件平台 泰山派樱猫的教程,屏资料链接: https://pan.baidu.com/s/1pNAKH33r7LtZG6EwHJ-HNA?pwdnsde 提取码: nsde (不要浪费时间下载,没有用,下载gitee上的) leefei/tspi-disp-6…...
python全栈-python进阶
python进阶 文章目录 python进阶异常except自定义异常类 文件操作序列化和反序列化CSV文件os模块os.path模块shutil模块 拷贝压缩 模块--modulefrom 模块 import 成员包package库LibraryPIP库 GUI编程-tkinter版使用类定义的GUI界面设置控件的属性方式Label标签的常用属性Butto…...
SpringBoot如何配置开发环境(JDK、Maven、IDEA等)
目录 1. 安装JDK 一、JDK介绍JRE(Java Runtime Envirnment):Java运行环境 二、下载JDK官网地址:Java Downloads | Oracle 三、安装JDK点击下载下来的安装包进行安装 四、配置JDK进入到环境变量中(下面介绍两种进入…...
图片粘贴上传实现
图片上传 html demo 直接粘贴本地运行查看效果即可,有看不懂的直接喂给 deepseek 会解释的很清晰 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"…...
C++--STL库-List
目录 1.list 的基本使用 1.1 创建和初始化 1.2. 插入元素 1.3. 删除元素 1.4. 访问元素 1.5 遍历 1.6 总结 list是C标准库(STL)中的双向链表容器,属于<list>头文件。 它的特点是: 动态大小:可以随时插入…...
kubeadm拉起的k8s集群证书过期的做法集群已奔溃也可以解决
kubeadm拉起的k8s集群证书过期的做法 这个是很久之前遇到的了,今天有空(心血来潮)就都回忆回忆写在这里为爱发光,部分内容来自arch先生(死党)的帮助。有时候有很多部门提了建k8s的需求,有些是临…...
idea连接gitee(使用idea远程兼容gitee)
文章目录 先登录你的gitee拿到你的邮箱找到idea的设置选择密码方式登录填写你的邮箱和密码登录成功 先登录你的gitee拿到你的邮箱 具体位置在gitee–>设置–>邮箱管理 找到idea的设置 选择密码方式登录 填写你的邮箱和密码 登录成功...
Kafka 简介
Kafka 简介 Apache Kafka 是一个开源的分布式流处理平台,广泛应用于实时数据流处理、日志管理、消息传递等场景。Kafka 最初由 LinkedIn 开发,并于 2011 年捐献给 Apache 软件基金会。 Kafka 的设计目标是高吞吐量、低延迟和高可用性,它能够…...
Ubuntu22.04 Deepseek-R1本地容器化部署/内网穿透/OPENWEBUI,打造个人AI助手!
1. 前言 本地部署DeepSeek并实现内网穿透,为家庭成员提供强大的AI支持。通过使用Ollama、Docker、OpenWebUI和Nginx,内网穿透,我们可以轻松实现快速响应和实时搜索功能。 2.软硬件环境 系统:ubuntu22.04, cuda12GPU: RTX3080Ti …...
红蓝对抗之常见网络安全事件研判、了解网络安全设备、Webshell入侵检测
文章目录 研判(入侵检测) 设备 经典网络云网络 异常HTTP请求Webshell分析 Webshell 的分类Webshell 的检测 主机层面流量层面 附录 常见端口漏洞…...
Linux部署DeepSeek r1 模型训练
之前写过一篇windows下部署deepseekR1的文章,有小伙伴反馈提供一篇linux下部署DeepSeek r1 模型训练教程,在 Linux 环境下,我找了足够的相关资料,花费了一些时间,我成功部署了 DeepSeek R1 模型训练任务,结…...
【大模型】DeepSeek:AI浪潮中的破局者
【大模型】DeepSeek:AI浪潮中的破局者 引言:AI 新时代的弄潮儿DeepSeek:横空出世展锋芒(一)诞生背景与发展历程(二)全球影响力初显 探秘 DeepSeek 的技术内核(一)独特的模…...
寒假学习总结
整个寒假都走在数据结构与算法的路上,深入学习了其中多个板块,刷了一些与之对应的题目,下面来一期总结(c) (emmm,主播在寒假试着去学习了几大语言的语法基础(丢丢) 如Ja…...
自愈网络的定义、其为用户带来的益处、具体的使用案例
在当今高度互联的世界中,网络稳定性和可靠性对于各种应用场景至关重要。无论是企业的日常运营、智能家居的便捷控制,还是工业网络的自动化管理,网络的任何中断都可能带来不可估量的损失和不便。正是基于这种需求,以太联—Intellin…...
NumPy的基本使用
在 Python 的数据科学与数值计算领域,NumPy 无疑是一颗耀眼的明星。作为 Python 中用于科学计算的基础库,NumPy 提供了高效的多维数组对象以及处理这些数组的各种工具。本文将带您深入了解 NumPy 的基本使用,感受它的强大魅力。 一、安装与导…...
HTTP 与 HTTPS:协议详解与对比
文章目录 概要 一. HTTP 协议 1.1 概述 1.2 工作原理 1.3 请求方法 1.4 状态码 二. HTTPS 协议 2.1 概述 2.2 工作原理 2.3 SSL/TLS 协议 2.4 证书 三. HTTP 与 HTTPS 的区别 四. 应用场景 4.1 HTTP 的应用场景 4.2 HTTPS 的应用场景 概要 HTTP(Hy…...
从零开始构建一个语言模型中vocab_size(词汇表大小)的设定规则
从零开始构建一个语言模型就要设计一个模型框架,其中要配置很多参数。在自然语言处理任务中,vocab_size(词汇表大小) 的设定是模型设计的关键参数之一,它直接影响模型的输入输出结构、计算效率和内存消耗。 本文是在我前文的基础上讲解的:从零开始构建一个小型字符级语言…...
斐波那契数列模型:在动态规划的丝绸之路上追寻斐波那契的足迹(上)
文章目录 引言递归与动态规划的对比递归解法的初探动态规划的优雅与高效自顶向下的记忆化搜索自底向上的迭代法 性能分析与比较小结 引言 斐波那契数列,这一数列如同一条无形的丝线,穿越千年时光,悄然延续其魅力。其定义简单而优美ÿ…...
RT-Thread+STM32L475VET6——ADC采集电压
文章目录 前言一、板载资源二、具体步骤1.打开CubeMX进行配置1.1 使用外部高速时钟,并修改时钟树1.2 打开ADC1的通道3,并配置为连续采集模式(ADC根据自己需求调整)1.3 打开串口1.4 生成工程 2. 配置ADC2.1 打开ADC驱动2.2 声明ADC2.3 剪切stm…...
基于Django快递物流管理可视化分析系统(完整系统源码+数据库+详细开发文档+万字详细论文+答辩PPT+详细部署教程等资料)
文章目录 基于Django快递物流管理可视化分析系统(完整系统源码数据库详细开发文档万字详细论文答辩PPT详细部署教程等资料)一、项目概述二、项目说明三、研究意义四、系统设计技术架构 五、功能实现六、完整系统源码数据库详细开发文档万字详细论文答辩P…...
【Pandas】pandas Series reindex_like
Pandas2.2 Series Computations descriptive stats 方法描述Series.align(other[, join, axis, level, …])用于将两个 Series 对齐,使其具有相同的索引Series.case_when(caselist)用于根据条件列表对 Series 中的元素进行条件判断并返回相应的值Series.drop([lab…...
Ollama安装和迁移,以及部署DeepSeek模型
什么是 Ollama Ollama 是大语言模型管理工具,它的主要作用是简化大语言模型的本地化部署和运行。如果你想调用本地模型,保护个人隐私,构建个人知识库,那你可以考虑使用 Ollama。 Ollama 的官网是 https://ollama.com/,正如官网所说,“Get up and running with large l…...
【数据挖掘】
数据挖掘 目录:1. 数据转换2. 属性选择3. 独立于方案的选择4. 探索空间5. 具体方案的选择6. 离散化数值属性无监督离散化基于熵的离散化其他离散化方法 k-means算法原理算法步骤优缺点优点缺点 代码示例(使用Python和scikit-learn库)代码解释…...
芝加哥学派(Chicago School):金融与经济学的创新力量(中英双语)
芝加哥学派:金融与经济学的创新力量 在经济学和金融学的历史上,有一个学派的影响力不容忽视,那就是芝加哥学派(Chicago School)。芝加哥学派不仅在学术界广受推崇,也深刻影响了全球的经济政策和金融市场。…...
web入侵实战分析-常见web攻击类应急处置实验1
场景说明: 某天运维人员发现在/opt/tomcat8/webapps/test/目录下,多出了一个index_bak.jsp这个文件, 并告诉你如下信息 操作系统:ubuntu-16.04业务:测试站点中间件:tomcat开放端口:22&#x…...
.NET SixLabors.ImageSharp v1.0 图像实用程序控制台示例
使用 C# 控制台应用程序示例在 Windows、Linux 和 MacOS 机器上处理图像,包括创建散点图和直方图,以及根据需要旋转图像以便正确显示。 这个小型实用程序库需要将 NuGet SixLabors.ImageSharp包(版本 1.0.4)添加到.NET Core 3.1/ …...
基于ffmpeg+openGL ES实现的视频编辑工具-字幕添加(六)
在视频编辑领域,字幕的添加是一项极为重要的功能,它能够极大地丰富视频内容,提升观众的观看体验。当我们深入探究如何实现这一功能时,FreeType 开源库成为了强大助力。本文将详细阐述借助 FreeType 库生成字幕数据的过程,以及如何实现字幕的缩放、移动、旋转、颜色修改、对…...
SpringMVC新版本踩坑[已解决]
问题: 在使用最新版本springMVC做项目部署时,浏览器反复500,如下图: 异常描述: 类型异常报告 消息Request processing failed: java.lang.IllegalArgumentException: Name for argument of type [int] not specifie…...
【科研绘图系列】R语言绘制SCI论文图合集
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍加载R包数据下载Load dataFigure 1Fig 1B: functional assays adhensionFIG 1C: Functional assays OPK Figure 2Fig 2C: Settings and function fo…...
间隔连续问题
间隔连续问题 1. 数据结构:某游戏公司记录的用户每日登录数据 表名:game_user 字段名:id(用户id)、dt(日期) 2. 需求: ① 创建表 ② 计算每个用户最大的连续登录天数,…...
3月营销日历:开启春日盛宴,绽放生活魅力
关键营销节点∶惊蛰、女生节、妇女节、 植树节、315消费者权益日、春分 营销关键词 养生、女生魅力、感恩女性、环保、品质 01.重点关注品类 春季服饰:如轻薄外套、春装等,适合惊蛰后的市场需求; 美妆护肤:妇女节期间…...
网络工程师 (48)传输层概述
前言 传输层(Transport Layer)是计算机网络体系结构中的关键层次之一,主要负责在源端和目的端之间提供端到端的数据传输服务。 一、位置与功能 传输层位于OSI(开放系统互连)参考模型的第四层,介于网络层和应…...
字符串函数和结构题内存对齐
图下为函数使用: #include <ctype.h>int main() {int ret isdigit(Q);printf("%d\n", ret);return 0; }int main() {printf("%c\n", toupper(a));printf("%c\n", tolower(A));return 0; }...
同花顺C++面试题及参考答案
对 C 和 C++ 哪个更熟悉? 在编程语言的学习与实践中,我对 C++ 更为熟悉。C 语言作为一门经典的编程语言,以其高效、灵活和接近硬件的特性,在系统编程、嵌入式开发等领域占据着重要地位。它提供了丰富的底层操作能力,如指针操作、内存管理等,为开发者直接控制计算机资源提…...
Python JSON的深度解析:从基础到应用
Python JSON的深度解析:从基础到应用 flyfish 什么是JSON? JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。它基于一个子集的JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999…...
创建三个节点
1. 节点克隆 根据教程Hadoop编译安装-CSDN博客将一台机器的hadoop的环境搭建好。 在虚拟机的列表中选中一台机器,右键—>管理—>克隆 填好【虚拟机名称】,选择本地存储位置,点击完成,就节点克隆完成了。 2. 修改IP地址 编…...
滤波器 | 原理 / 分类 / 特征指标 / 设计
注:本文为 “滤波器” 相关文章合辑。 未整理去重。 浅谈滤波器之 —— 啥是滤波器 原创 RF 小木匠 射频学堂 2020 年 03 月 25 日 07:46 滤波器,顾名思义,就是对信号进行选择性过滤,对不需要的信号进行有效滤除。按照其传输信…...
Flutter - 初体验
项目文件目录结构介绍 注:创建 Flutter 项目名称不要包含特殊字符,不要使用驼峰标识 // TODO 开发中运行一个 Flutter 三种启动方式 Run 冷启动从零开始启动Hot Reload 热重载执行 build 方法Hot Restart 热重启重新运行整个 APP 先看效果,…...
OSPF(开放路径最短优先)
ospf优先级:内部优先级默认为10,外部优先级默认为150 1.ospf的三张表 (1)邻居表 <记录邻居状态和关系> (2)拓扑表 <链路状态数据库> (3)路由表 <对链路状态数据库进…...
SpringBoot 排除一些包的注入
文章目录 需求一、使用 ComponentScan 需求 在系统迭代的过程中,有一些 Controller 大批量的不再使用,或者有一些接口我们不想再提供给外界 一、使用 ComponentScan SpringBootApplication(scanBasePackages "com.zrb.excludeSomePkg") Comp…...
【Python爬虫(21)】从0到1:Python与MySQL的深度融合
【Python爬虫】专栏简介:本专栏是 Python 爬虫领域的集大成之作,共 100 章节。从 Python 基础语法、爬虫入门知识讲起,深入探讨反爬虫、多线程、分布式等进阶技术。以大量实例为支撑,覆盖网页、图片、音频等各类数据爬取ÿ…...
数据结构-----双向链表
一、双向循环列表 head.h #ifndef __head_h__ #define __head_h__ #include <stdio.h> #include <string.h>…...
idea 无法下载源码
作为一个程序猿,难免会跟源码打交道,可是在下载源码有时候,会提示找不到对象,这是什么原因呢?今天我们来解决这个问题。 问题:idea无法下载源码 Cannot download sources Sources not found for:org.sprin…...
计算机网络-OSI七层参考模型与数据封装,网络安全零基础入门到精通实战教程!
目录 一、网络 1、网络的定义 2、网络的分类 3、网络的作用 4、网络的数据传输方式 5、网络的数据通讯方式 二、OSI七层参考模型 1、网络参考模型定义 2、分层的意义 3、分层与功能 4、TCP\IP五层模型 三、参考模型的协议 1、物理层 2、数据链路层 3、网络层 4…...
洛谷 P2234 [HNOI2002] 营业额统计(详解)c++
题目链接:P2234 [HNOI2002] 营业额统计 - 洛谷 1.题目分析 输入输出样例:根据题目知第一天的最小波动值为第一天的营业额,所以第一天的最小波动值是5,算出第二天的最小波动值就说拿前面的数分别减当前的数,并且取一个…...
Go日期时间处理工具Carbon
**注意:**本文大部分内容摘抄自-https://github.com/dromara/carbon/blob/master/README.cn.md使用文档 一、简介 一个轻量级的、易于使用的、语义智能的日期时间处理库,支持链式调用,已被 awesome-go 收录,现已经捐赠给了 drom…...