自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Cherry

自律,努力

  • 博客(77)
  • 收藏
  • 关注

原创 使用patchelf解决vscode远程连接不支持低版本glibc的问题

VScode 1.86 版本的 remote 要求 glibc 2.28 及以上,于是在各种旧版本服务器上就不支持了。新版本刚发布就在 github 上的上讨论起来了,中也说明了,从 VS Code 版本 1.86.1(2024 年 1 月)开始提高了远程服务器构建工具链的最低要求。VS Code 分发的预构建服务器与基于 glibc 2.28 或更高版本的 Linux 发行版兼容。

2024-03-27 21:19:56 788

原创 Rust入门教程(七):生命周期

Rust 生命周期机制是与所有权机制同等重要的资源管理机制。生命周期,简而言之就是引用的有效作用域,之所以引入这个概念主要是应对复杂类型系统中资源管理的问题。引用是对待复杂类型时必不可少的机制,毕竟复杂类型的数据不能被处理器轻易地复制和计算,但引用往往导致极其复杂的资源管理问题。

2022-10-05 00:12:54 2966 2

原创 Rust入门教程(六):泛型和特性

泛型是一个编程语言不可或缺的机制。C++ 语言中用"模板"来实现泛型,而 C 语言中没有泛型的机制,这也导致 C 语言难以构建类型复杂的工程。泛型机制是编程语言用于表达类型抽象的机制,一般用于功能确定、数据类型待定的类,如链表、映射表等。

2022-10-05 00:11:14 1271

原创 Rust入门教程(五):错误处理

Rust 入门教程第五篇,介绍了 Rust 的错误处理以及 Result 枚举的使用

2022-08-11 20:43:03 1635

原创 Rust入门教程(四):常用的集合

Rust 入门教程第四篇,该篇介绍了常用的几种集合类型:Vector,String 和 HashMap,这些集合类型都是存储在 Heap 中,不需要编译时确定大小,可以在运行时动态改变大小。

2022-06-27 11:05:02 889

原创 Rust入门教程(三):Package、Crate 和 Module

本文介绍了Rust的Package、Crate 和 Module

2022-06-13 21:50:08 1222

原创 Rust入门教程(二):结构体和枚举

本文是Rust语言学习的第二部分,介绍了Rust语言基础语法的结构体和枚举部分,枚举在Rust中相当重要。

2022-06-01 22:43:25 883

原创 Rust入门教程(一)

Rust 基础教程第一篇,这一篇主要介绍Rust语言的变量、可变性、数据类型、函数、控制流、切片和及其重要的所有权概念

2022-05-15 12:33:18 1873

原创 如何在Clion一个项目中添加多个main函数

如何在Clion一个项目中添加多个main函数Clion中一个项目默认只能包含一个main函数,即只能有一个入口函数,多的话会报错。但是一般我们用Clion写算法的时候(例如刷力扣和PTA等),这样的话,我们手动在 CMakeLists.txt 中添加可执行文件的话会非常麻烦,因此我们可以修改 CMakeLists.txt 文件,让其自动遍历根目录下所有 .cpp 文件,然后将其添加到 CMakeList 中。代码如下:# 遍历项目根目录下所有的 .cpp 文件file (GLOB_RECURSE f

2022-04-11 15:38:42 2091 1

原创 耶鲁博弈论 第2节 学会换位思考

耶鲁博弈论 第2节 学会换位思考一些定义形成博弈的要素参与人(players),用 iii, jjj 表示参与人的策略(strategies),用 sis_{i}si​,sjs_{j}sj​ 表示;所有可能的策略集合 SiS_{i}Si​,区别于参与人的策略小写 sss;某一次博弈 sss,用不带下标的 sss 表示,称为策略组合(a strategy profile),也称为策略向量博弈的收益(payoffs),用大写的 UUU 表示,UiU_{i}Ui​ 取决于参与博弈的 NNN 个人的

2022-03-15 21:30:26 4245

原创 耶鲁博弈论 第1节 导论——五个入门结论

耶鲁博弈论 第1节 导论——五个入门结论本系列笔记来自耶鲁博弈论,课程视频来自b站耶鲁大学:博弈论,笔记不定期更新。一、开胃菜——成绩博弈开场游戏:你和你的同桌在完全不知情的情况下,填写自己的成绩 ααα 和 βββ,然后老师将所有同学随机分成两两一组,你的成绩将按照以下情况给出:(1)若你填写 ααα 你的对手填写 βββ,你将得到 AAA 等级,你的对手将得到 CCC 等级(2)若你填写 ααα 你的对手填写 ααα,你将得到 B−B-B− 等级,你的对手将得到 B−B-B− 等级(3

2022-01-24 15:16:42 500

原创 流水线数据相关与冒险

流水线数据相关与冒险(冲突)在组成原理中,流水线相关包含数据相关,结构相关,控制相关,这里的相关在体系结构中应该称作为冲突(或冒险),实际上相关和冲突在含义上有一些不同在体系结构中有 3 种不同类型的相关:数据相关(也叫真数据相关)、名相关和控制相关数据相关若:指令 i 生成的结果可能会被指令 j 用到指令 j 数据相关于指令 k,指令 k 相关于指令 i那么指令 j 数据相关于指令 i要说明的是,数据相关可能会导致数据冒险名相关(名称相关)当两条指令使用相同的寄存器或存储器位置(称

2022-01-13 20:19:02 1686

原创 BAT批处理(二):批量删除指定文件以及相关简单的语法结构(系统变量errorlevel,变量延迟等)

BAT批处理(二):批量删除指定文件以及相关简单的语法结构(系统变量errorlevel,变量延迟等)前两天在使用 VSCode 的时候,看到之前那么多 cpp 编译产生的 exe 可执行文件,于是心生一个念头,我要把它们全部删掉,但是又不想一个个地删,便想到了利用 bat 脚本批量删除 exe 文件。于是在搜集了大量资料后,开始了编写。首先就是一条简单的 del:del F:\Code\C++\*.exe但是发现只能删除掉 C++ 那个文件夹根目录下的 exe 文件,然后发现,在后面加上 /s,

2020-05-09 18:41:20 10424

原创 在Windows上安装Ubuntu子系统系统,报错WslRegisterDistribution failed with error: 0x8007019e

在Windows应用商店安装Ubuntu系统,报错WslRegisterDistribution failed with error: 0x8007019e1. 报错内容Installing, this may take a few minutes...Installation Failed!Error: 0x8007019ePress any key to continue...这...

2020-04-13 23:58:18 30946 3

原创 Virtual Box更改虚拟硬盘导致无法启动 [错误代码:E_INCALIDARG(0x80070057)]

Virtual Box更改虚拟硬盘导致无法启动 [错误代码:E_INCALIDARG(0x80070057)]当不小心删掉虚拟机但是却没有删掉虚拟硬盘文件的时候,再次导入原来的虚拟机到原来的文件夹将会比较麻烦。首先新创建的虚拟机不能在已有虚拟硬盘的目录创建,如图:因此只能在一个空的文件夹中新建,于是我们点击虚拟硬盘下的 使用已有的虚拟硬盘文件,这个虚拟硬盘当然是在其他文件夹下。创建好了之...

2020-04-01 19:13:10 1032

原创 密码学(二):古典密码之维吉尼亚密码的破解

维吉尼亚密码的破解一、引言上一章我们介绍了维吉尼亚密码的原理,是通过移位替换的加密方法进行加密,但是因为概率论的出现这种简单的移位或替换就容易破解了,其原理很简单,英文中字母出现的频率是不一样的。比如字母 e 是出现频率最高的,占12.7%;其次是t,9.1%;然后是a,o,i,n等,最少的是z,只占0.1%。具体概率表除了英语,其他语言也有相关统计(图片来源)二、一般破解的方法...

2020-02-16 18:46:10 9502 9

翻译 CSDN-markdown编辑器使用

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...

2020-02-16 18:21:50 162

原创 密码学(一):古典密码之维吉尼亚密码原理介绍

维吉尼亚(Vigenère Cipher)密码原理介绍一、介绍  维吉尼亚密码(又译维热纳尔密码)是使用一系列凯撒密码组成密码字母表的加密算法,属于多表密码的一种简单形式。  维吉尼亚密码曾多次被发明。该方法最早记录在吉奥万·巴蒂斯塔·贝拉索( Giovan Battista Bellaso)于1553年所著的书《吉奥万·巴蒂斯塔·贝拉索先生的密码》(意大利语:La cifra del. ...

2020-02-16 16:03:57 14598 2

原创 Python爬虫(一):用 Requests + BeautifulSoup 爬取网站上的信息

Python爬虫(二)要爬取网站的信息,首先,要了解服务器与本地的交换机制;其次,我们还要了解解析真实网页的办法。一、服务器与本地的交换机制我们知道,网页在浏览器中显示内容,都是网页向所部署的服务器进行请求,也就是 Request,然后服务器进行相应,也就是 Response,这也就是 HTTP 协议的大致方式。九成以上的网页都只使用 GET 和 POST 方法,在浏览器中 F12 打...

2020-02-13 18:39:17 2725

原创 JavaScript简单语法

JS简单语法1. JavaScript-输出内容(document.write)document.write()可用于直接向 HTML 输出流写内容。简单的说就是直接在网页中输出内容。第一种: 输出内容用"“括起,直接输出”"号内的内容。<script type="text/javascript"> document.write("I love JavaScript!");...

2020-02-05 17:09:40 330

原创 HTML学习(八):CSS样式设置小技巧

1. 水平居中设置-行内元素我们在实际工作中常会遇到需要设置水平居中的场景,比如为了美观,文章的标题一般都是水平居中显示的。这里我们又得分两种情况:行内元素还是 块状元素,块状元素里面又分为定宽块状元素,以及不定宽块状元素。今天我们先来了解一下行内元素怎么进行水平居中?如果被设置元素为文本、图片等行内元素时,水平居中是通过给父元素设置 text-align:center来实现的。(父元素和子...

2020-02-03 22:18:13 330

原创 HTML学习(七):盒模型代码简写以及单位和值

1. 盒模型代码简写还记得在讲盒模型时外边距(margin)、内边距(padding)和边框(border)设置上下左右四个方向的边距是按照顺时针方向设置的:上右下左。具体应用在margin和padding的例子如下:margin:10px 15px 12px 14px;/*上设置为10px、右设置为15px、下设置为12px、左设置为14px*/通常有下面三种缩写方法:如果top、r...

2020-02-03 21:28:10 406

原创 HTML学习(六):CSS布局模型

1. CSS布局模型清楚了CSS 盒模型的基本概念、 盒模型类型, 我们就可以深入探讨网页布局的基本模型了。布局模型与盒模型一样都是 CSS 最基本、 最核心的概念。 但布局模型是建立在盒模型基础之上,又不同于我们常说的 CSS 布局样式或 CSS 布局模板。如果说布局模型是本,那么 CSS 布局模板就是末了,是外在的表现形式。CSS包含3种基本的布局模型,用英文概括为:Flow、Layer ...

2020-02-03 21:10:23 169

原创 HTML学习(五):CSS盒模型

1. 元素分类在讲解CSS布局之前,我们需要提前知道一些知识,在CSS中,html中的标签元素大体被分为三种不同的类型:块状元素、内联元素(又叫行内元素)和内联块状元素。常用的块状元素有:<div>、<p>、<h1>...<h6>、<ol>、<ul>、<dl>、<table>、<addres...

2020-02-03 18:01:20 252

原创 JavaWeb世界(十三):过滤器和监听器

过滤器概述在 Java 中的最小程序单元是类,程序中的过滤器就是一个特殊的类。类似 Servlet 就是 Web 的一个组件。Filter 也是一个组件。作用过滤器处于客户端和服务端之间,可以对所有的请求或者响应做拦截操作。以常规的方式调用资源(Servlet / JSP);利用修改过的请求调用信息;调用资源之后,但在响应到客户端之前,对响应做出修改;阻止当前资源调用,转而调用其...

2020-01-31 15:06:18 166

原创 JavaWeb世界(十二):验证码的实现和防止表单重复提交

验证码的介绍验证码大家都很熟悉了,一般情况下,互联网上的系统都会使用验证码,但是一般企业内网不需要验证码。为了就是恶意破解密码和脚本恶意篡改信息等。首先写一个 Servlet 来响应验证码 JSP:RandomCodeServlet.java:import java.awt.Color;import java.awt.Font;import java.awt.Graphics;imp...

2020-01-30 17:16:24 364

原创 JavaWeb世界(十一):购物车的设计与实现

购物车概述购物车的设计基于 Session 的购物车购物车是存储到 Session 作用域的,浏览器关闭购物车就没有了基于 Cookie 的购物车和基于 Session 一样,内容存在浏览器中,不能在不同电脑上共享信息基于 Cookie + 数据库 的购物车购买商品时,如果还没有登录,此时就临时存到 Cookie 中若已经登录,先读取 Cookie 中的数据,然后保存到数据库中(...

2020-01-29 18:12:02 3467 2

原创 JavaWeb世界(十):简单的登录与注销

不知道叫什么标题DAO实现用户名和密码首先在数据库中创建表 t_user:然后实现DAO:User.java:import lombok.Data;@Datapublic class User { private Long id; private String username; private String password;}IUserDAO.java:impo...

2020-01-28 17:49:12 444

原创 Execl的导入与导出

Execl的导出我们使用 Apache 的 POI 工具,下载地址.过程很简单,主要就是 API 的使用,代码如下:ExeclUtil.java:import java.io.OutputStream;import java.lang.reflect.Field;import java.util.List;import java.util.Map;import java.util....

2020-01-26 17:33:22 108

原创 JavaWeb世界(九):文件上传与下载

一、文件上传先创建工程,写一个简易的JSP:<%@ page language="java" contentType="text/html; charset=UTF-8"%><!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; c...

2020-01-21 17:25:43 359

原创 JavaWeb世界(八):MVC思想与合并Servlet

MVC思想JavaEE前后的设计思想Model1:在早起的时候,JavaEE以JSP为中心,使用JSP和JavaBean技术开发一个简答的应用,完全够用。但是当项目比较大的时候,存在的问题:JSP既要展示界面,又要处理请求,而JSP本身不是很擅长处理请求。因此将处理请求提取出来,即Servlet。Model2:为了解决Model中JSP不善于处理请求的操作,在Model2中引入Se...

2020-01-15 15:49:14 209

转载 Windows10新版本启动虚拟机报错问题

墙裂转载:这篇博客从 Windows 官网和 Virtual Box 都没解决的问题在这儿解决了。复制一下他的内容,当然最好还是访问一下他的博客亲自看看啦~一. VMware Workstation 与 Device/Credential Guard 不兼容。在禁用 Device/Credential Guard 后,可以运行 VMware Workstation。二. VirtualBo...

2020-01-10 17:15:45 683

原创 Linux点点滴滴(三):SCP免密传输以及在Linux上设置和Windows的共享文件夹

Linux学习的点点滴滴(三)scpscp是secure copy缩写,用于linux系统下基于ssh登录的远程文件拷贝命令命令使用:scp -P port your_local_dir your_username@ip:your_host_dir如:scp -P 20 F:\Code\test.cpp [email protected]:/home/test该命令表示将本地F盘中...

2019-12-20 23:03:30 633

原创 迈入操作系统的大门(二):环境配置

迈入操作系统的大门(二)

2019-12-20 22:44:27 92

原创 迈入操作系统的大门(一)

迈入操作系统的大门(一)本系列博客是学习于渊的《Orange’s 一个操作系统的实现》所做的一些笔记和记录,用于记录个人学习。本书的大概结构是:一些准备工作,包括对简单操作系统的了解和环境的配置保护模式扩充内核进程概述及实现I/O我还将参考Andrew S. Tanenbaum 和 Albert S. Woodhull的《操作系统设计与实现》。现在,我们开始!一、准备工作...

2019-12-20 15:44:12 266

原创 Linux点点滴滴(二):在 Linux(x86)上安装 GNU 工具链(MIPS)并进行编译

Linux学习的点点滴滴(二)其实本文跟Linux关系并不是那么大,是我在自己写CPU的过程中总结的东西,之前只用Word写在自己电脑里了,想着哪天放到博客上。本文是在写CPU进行测试的时候需要将汇编翻译成机器码的过程,刚开始学的时候,也遇到了一些小问题,在此记录。一、安装GNU工具链gcc编译器使用的是龙芯公司的,使用了MIPS架构。下载地址进入Linux虚拟机的/opt文件夹(其实哪......

2019-12-13 20:25:58 5495 6

原创 Linux点点滴滴(一):SSH协议

Linux学习的点点滴滴(一)一、SSH协议介绍SSH全称是Secure Shell,是基于网络中应用层的协议,为远程登录会话和其他网络服务提供安全性的协议。SSH使用最多的是远程登录和传输文件,实现此功能的传统协议都不安全(ftp,telnet等),因为它们使用明文传输数据。而SSH在传输过程中的数据是加密的,安全性更高。基于SSH协议的文件传输协议SFTP是安全的,我在后面的学习中也会介绍...

2019-12-13 18:15:06 547

原创 CLion中无法用相对路径读入文件

在写yacc的时候,用的是CLion编译器,但是测试的时候除了一点问题,在一点一点的打断点测试,但是每一次输入终结符号和非终结符号以及产生式集合很麻烦,于是就用了文件读入上述数据,但是总是发现文件读不进去,试了好久,只有输入文件的绝对路径才能正确读取。后来发现CLion这个软件编译时是读取 cmake-build-debug 这个文件夹,只要把文件放入该文件夹中就可以成功读取。或者在...

2019-10-10 22:47:50 2889 5

原创 JavaWeb世界(七):EL与JSTL

一、表达式语言(EL)EL(Expressing Language)目的:从作用域中获取指定属性名的共享数据语法:${属性名} ,属性名没有引号EL从作用域中查询指定属性名的共享数据,是有查找顺序的,按照 page,request,session,application 顺序查找EL中的内置对象(隐式对象):(来源:zdwzzu2006的 CSDN博客)四大作...

2019-07-19 01:16:38 247

原创 Jython使用

一、 Jython 简介 Jython 是一种完整的语言,而不是一个 Java 翻译器或仅仅是一个 Python 编译器,它是一个 Python 语言在 Java 中的完全实现。 Jython 也有很多从 CPython 中继承的模块库。最有趣的事情是 Jython 不像 CPython 或其他任何高级语言,它提供了对其实现语言的一切存取。所以 Jython 不仅给你提供了 P...

2019-07-18 15:34:56 23565 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除