自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 C语言基础(五)——联合

联合允许在相同的内存位置存储不同的数据类型,这种能力使得它在特定场景下非常有用,尤其是在需要节省内存或者处理多种数据类型但不需要同时使用它们的场景中。例如,在网络通信中处理不同类型的消息包,或者在图形用户界面中处理不同类型的事件数据。在资源受限的系统中,联合可以有效减少内存的使用。通过共享内存,不同类型的数据可以被重叠存储,减少了总体的内存需求。这一串的代码与上面的代码的区别是使用了typedef将结构体起了一个新的名字,这样在。所以如果想学习联合,结构体是不得不学习的一部分,请查看我的博客。

2024-02-04 21:58:53 917 1

原创 C语言基础(四)——结构体

C语言中的结构体是一种复合数据类型,程序员可以通过结构体将不同类型的数据项组合为一个单独的结构。在C语言中,结构体通过关键字 定义。一个结构体可以包含多个不同类型的变量。例如,如果我们想要存储一个人的信息,我们创建一个包含姓名、年龄和身高的结构体。定义和初始化结构体定义了结构体类型之后,可以通过以下方式声明结构体变量:结构体的初始化可以在声明时通过列表初始化完成:访问结构体成员可以使用点操作符()来访问结构体的成员。例如,更新 的信息可以这样做:结构体和指针结构体与指针的结合使用增加了语言

2024-02-03 06:16:02 964

原创 C语言基础(三)——函数的调用与声明

C语言中一个极为重要的组成部分——函数。在C语言中,函数是一段执行特定任务的代码块,可以被程序中其他地方调用。函数提供了一种将代码模块化和组织起来的方式,使得程序更加结构化、易读和易维护。函数的定义包括函数的返回类型、函数名、参数列表和函数体。int是函数的返回类型,return后面的部分是返回值。因为是计算两个int型的整数(a和b)的和,所以返回值的返回类型是int。如果函数的返回类型是void,那么不用return返回值。add是函数名,是参数列表,这里的a和b叫做形参。

2024-01-27 22:33:09 908

原创 C语言基础(二)、每日Linux(三)——gcc命令,通过gcc命令熟悉C语言程序实现的过程

GCC的全称为GNU Compiler Collection(GNU是一个项目,旨在创建一个完全免费、开源的类Unix操作系统,Compiler 是编译器,Collection 是集合)。因为汇编阶段的程序已经进行了编译,输出的是机器代码,是二进制代码,如果使用cat进行查看就会出现一堆乱码,所以这里我们使用od命令进行查看。使用cat查看test.i的内容后,其实包含了很多的宏的定义,函数的声明等等,最后才是main函数。编译阶把高级的C语言转变为较低级的汇编语言,这里的语言就是汇编语言。

2024-01-26 12:15:00 1253 1

原创 C语言基础(一)——C语言程序的执行过程和构造

在C语言中,函数是一段执行特定任务的代码块,可以被程序中其他地方调用。函数提供了一种将代码模块化和组织起来的方式,使得程序更加结构化、易读和易维护。函数的定义包括函数的返回类型、函数名、参数列表和函数体。int是函数的返回类型,return后面的部分是返回值。因为是计算两个int型的整数(a和b)的和,所以返回值的返回类型是int。add是函数名,是参数列表,这里的a和b叫做形参。调用函数时需要使用函数名和实参列表,下面是调用add函数的一个例子。其余部分就是函数体,函数体必须用{}

2024-01-25 12:15:00 1221

原创 每日Linux(二)——文件和目录的命令(已经很全了)

—tree 命令用于以树状图形式显示目录结构,递归地列出目录和文件,可以看作是ls的具象化表示。-P:–physical,显示物理路径,即不经过符号链接解析的路径。-m:–mode 设置权限模式,类似于 chmod 命令的模式设置。-p:–parents,递归创建目录,如果父级目录不存在也一并创建。-L:–logical,显示逻辑路径,即经过符号链接解析后的路径。在Linux中,操作系统中的目录是以树状图的结构构成的,pwd:显示当前工作目录的绝对路径。——移动文件或目录,也可用于重命名。

2024-01-24 12:14:21 1175 1

原创 每日Linux(一)——man和help命令

man是英文单词manual的缩写,在这里是手册的意思,man最大的作用就是列出目标命令的安装手册,可供用户查看目标命令的使用方法。可以在一定程度上解决man和help在内建命令和外部命令的尴尬问题,无论是以上的哪一种命令,都可以使用。定义:外部命令是独立的可执行文件,存储在文件系统中的某个位置。执行位置:需要启动新的进程,通过调用外部命令的可执行文件来执行。help函数的主要作用是用于获取“帮助”信息,命令的基本结构是。这里其实我们就已经初步了解了man的用法,剩下的就是应用了。

2024-01-23 11:57:30 1485 1

原创 半加器、全加器的实现和应用——《计算机科学概论》原书第七版 重点内容分析

半加器是有局限的,主要的原因是只能实现最低位的加法计算,如果涉及到进位,那么半加器是无法实现的,因此,我们引入了全加器。用布尔表达式可以写为:Sum=A·B Carry= A ⊕ B。C_in的值是上一位的全加器(也就是carry)直接传递过来的。任何减法都可以转化为加法,对于二进制的加减法的运算可以查看。研究两个数的加法,我们可以使用逻辑门来实现半加器和全加器。,多个数的加法我们可以拆分为两个数的加法。半加器可以实现二进制中一个位的加法运算。计算sum,然后使用与门计算Carry。

2024-01-21 12:22:20 600 1

原创 C语言中的文件操作函数

在C语言中,文件指针是一个指向文件的指针变量,用于定位和操作文件。在C语言中文件指针类型FILE*习惯性定义文件指针为FILE* fp;

2024-01-01 07:41:13 524

原创 C语言中的递归函数的简单应用

递归函数是指在函数内部调用自身的函数。这种函数可以通过不断调用自身来解决问题,通常用于解决可以被分解为相似子问题的情况。

2024-01-01 07:28:17 483

原创 根据IEEE 754标准实现十进制和二进制的转换

IEEE 754标准主要包括两种浮点数格式:float单精度浮点型(4字节=32位)和double双精度浮点型(8字节=64位)。单精度浮点数由1位符号位(sign)、8位指数位(Exponent)和23位尾数(Mantissa)位组成。双精度浮点数由1位符号位(sign)、11位指数位(Exponent)和52位尾数位(Mantissa)组成。因为两种浮点型的表示规则相似,我们以较为简单的float(单精度浮点数)为例: 1. 符号位(S):1位,0表示正数,1表示负数 2. 指数位(E):8

2023-12-26 02:43:37 2001 1

原创 门和电路——组合电路基本原理《计算机科学概论》原书第七版 重点内容分析

## 什么是门门是对计算机的电信号执行基本运算的设备(在我们的接下来的讨论中,电信号都被抽象成0和1)门可以接受输入信号,并根据预先设定的逻辑规则来产生输出信号。## 什么是电路电路时由相关联的门组成的,可以实现特点运算的逻辑函数

2023-12-23 23:16:34 1378 1

原创 基于Ubuntu系统使用gpg进行加解密的步骤(最最最简单且详细)

GPG(GNU Privacy Guard)是一个用于加密、签名和验证文件的开源加密工具。它可以帮助用户保护他们的数据免受未经授权的访问和篡改。您可以使用GPG来加密和签名电子邮件、文件和文本消息,以确保它们的安全性和完整性。gpg的使用对于理解加解密过程,理解数字签名和身份验证等相关知识有重要作用。用户实际进行加解密操作,对维护数据安全有重要作用。

2023-12-22 07:45:00 1396

原创 加解密技术优点与局限性分析

加密是一种将明文转换为密文的过程,解密则是将密文转换回明文的过程。加密和解密是信息安全领域中常用的技术,用于保护数据的机密性。公私钥是一种非对称加密技术,它使用了两个不同的密钥:公钥和私钥。公钥是公开的,任何人都可以使用它来加密消息,而私钥则是保密的,只有私钥的持有者才能使用它来解密消息。

2023-12-21 22:00:26 624 1

原创 VisualBox虚拟机ip地址为10.0.2.15的解决办法

网络地址转换(NAT)的连接方式隐藏了真正的ip地址,也就是说10.0.2.15只是一个公共的ip地址,所以自然无法被ping通。在VisualBox的界面菜单栏选择设置->网络,然后把网络地址转换(NAT)改为桥接网卡,然后重启虚拟机,问题就迎刃而解了。如果您的虚拟机只是想实现正常上网,使用NAT是没什么问题的,它可以在一定程度上增强网络安全性(记住,只是一定程度上)而如果您对于虚拟机有更高的要求,比如ssh连接,提高网络性能,那么您最好选用桥接网卡。并报错:NO ROUTE TO HOST。

2023-12-20 18:50:56 1704 5

原创 二进制及原码、反码、补码《计算机科学概论》原书第七版 重点内容分析

二进制及原码、反码、补码《计算机科学概论》原书第七版 重点内容分析1.进制(1)二进制(2)四进制、八进制与十六进制2.原码、反码(1)原码转换方法局限性:(2)反码转换方法:局限性:3.二进制中补码的表示法转换方法优越性0的问题负数的运算4.补充知识

2023-12-19 21:48:00 1447 2

原创 操作系统的重点内容分析《计算机科学概论》原书第七版

以上是我对于《计算机科学概论》第十章中的部分重点内容的理解,还请各位批评指正。

2023-12-18 21:08:50 1413 1

原创 xampp的安装和配置(保姆级教程)

我们可以通过以下方式解决该问题:右键应用程序,点击属性,单击“兼容性”(箭头处),再勾选以管理员身份运行此程序。在您安装的位置打开文件夹,并找到箭头处的应用程序,右键,找到创建快捷方式,会自动为你把快捷方式移动到桌面。我的选择是安装在D盘中,个人建议:如果想要安装在C盘中,也不要按照默认位置安装。点击箭头处的start,如果没有报错,那么恭喜您,您已经可以正常使用了。之后点击"Next",到下面这个窗口需要等待一会,直到进度条结束,如果出现红框内的报错,就说明端口被占用了,我们接下来更改端口。

2023-12-17 21:51:20 3433 1

原创 基于Ubuntu的Linux操作系统上实现ssh的远程连接(保姆级教程)

SSH(Secure Shell)是一种网络协议,用于在网络上安全地进行远程登录和执行命令。它通过加密技术保护数据传输的安全性,使得用户可以在不安全的网络中安全地访问远程主机。SSH可以提供对远程主机的终端访问、文件传输和端口转发等功能,被广泛应用于服务器管理、系统维护和远程操作等场景。您的[root@hostname]中的hostname变成目标用户名,即成功连接。用户名即hostname被连接的服务器名,IP地址同上。首先我们得先学会如何远程连接。如果没有报错,就说明安装成功。

2023-12-16 20:13:03 2927 3

原创 Linux操作系统中如何查看IP地址

注:ip a/ip address show/ip a show等命令与该命令等效)该目录下会出现127.0.0.1的地址,该地址是计算机内部用的地址,不会与外部连接。输入密码即可安装,再次输入命令即可查看ip地址。一般我们使用的是以192.168开头的地址。进入之后可以看到服务器的详细信息了。执行以上命令后会出现一大段文字,在。最后显示的是127.0.0.1。找到:设置-网络-有线设置。注:第一次输入需要安装。

2023-12-16 20:07:21 1209

原创 好用的免费算法可视化平台推荐

VisuAlgo是一个计算机算法可视化网站和在线平台,提供各种算法和数据结构的可视化展示。它旨在通过交互式的视觉呈现帮助学生和专业人士理解和学习这些概念。是著名的加密工具CrypTool的基于Web的版本。它允许用户尝试和学习各种加密技术和算法,例如加密、解密和数字签名。使用edge的翻译器对于专有名词的翻译还是有误,这对于初学者来说很致命。作为一名初学者,本人亲测:这两款可视化算法平台都非常优秀,如果您是算法初学者或教育者,请不要错过它们。

2023-12-15 10:16:36 741

原创 我的编程之路之始

我来自于四川的一个小城市,2023.9.01进入大学学习,专业为信息安全。我是对编程有着浓厚的兴趣。我喜欢不断学习新知识,希望通过编程来实现自己的创意和想法。

2023-12-13 15:44:11 336 2

空空如也

空空如也

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

TA关注的人

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