自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

书山有路勤为径,学海无涯苦作舟。

爱喝兽奶的荒天帝的博客

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

原创 【Python正则表达式】:文本解析与模式匹配

例如,“(ab)\1” 匹配由两个 “ab” 组成的字符串,而 “(ab)(cd)\2\1” 则匹配由"abcdcdab"组成的字符串。正则表达式 pattern 用于匹配字符串中以单词 ‘hello’ 开头的行,使用了多行匹配模式 re.M,因此可以匹配到两行中以 ‘hello’ 开头的字符串。这几个操作符是贪婪匹配的,它们会尽量匹配更多的文本。正则表达式 pattern 用于匹配字符串中的单词 ‘hello’,但是使用了大小写不敏感的匹配模式 re.I,因此可以匹配到大写的单词 ‘Hello’。

2024-07-22 21:38:50 1120 68

原创 【Python爬虫实战入门】:笔趣阁小说爬取,一篇教你爬虫入门

requests简介requests模块官方文档requests 是 Python 编程语言中一个常用的第三方库,它可以帮助我们向 HTTP 服务器发送各种类型的请求,并处理响应。向 Web 服务器发送 GET、POST 等请求方法;在请求中添加自定义标头(headers)、URL 参数、请求体等;自动处理 cookies;返回响应内容,并对其进行解码;处理重定向和跳转等操作;检查响应状态码以及请求所消耗的时间等信息。

2024-07-16 18:59:25 3048 174

原创 【Python字符串攻略】:玩转文字,编织程序的叙事艺术

在切片中,还可以使用步长来控制返回的元素之间的距离。例如,要从一个列表中获取所有的偶数位置的元素,可以使用步长为2的切片操作。在Python中,字符串的第一个字符的索引是 0,第二个字符的索引是 1,依此类推。在Python中,切片允许我们从序列类型数据中选择一个子集并返回一个新的序列。在这种情况下,从右到左计数,最后一个元素的索引为-1,以此类推。是切片结束的索引位置(不包括该位置所在的元素,默认为序列长度),另外,如果要获取字符串的最后三个字符,可以使用负数索引和空的。在这个例子中,我们使用一个空的。

2024-07-14 13:08:06 2944 122

原创 【Python迭代器探秘】:揭秘迭代器与生成器的魔法,掌握高效循环的艺术

定义了一个 my_generator() 函数,它使用 while True 循环不断返回 yield 所产生的值,并在 yield 语句中使用变量 val 来接收 send() 方法所发送的值。与 next() 方法不同,send() 方法可以在生成器中接收一个值,并且该值会成为生成器中 yield 的表达式的结果。Python内置了很多支持迭代器模式的对象,同时也提供了一些常用的内置迭代器函数,包括map()、filter()、zip()和reversed()等。() 方法,即可满足迭代协议。

2024-07-09 16:58:33 2992 178

原创 【Python函数编程实战】:从基础到进阶,打造代码复用利器

函数在Python中扮演着至关重要的角色,它们不仅封装了代码的逻辑单元,提高了代码的复用性和模块化程度,还通过参数传递和返回值,实现了数据和结果的灵活交换。Python函数支持多种定义方式,从最基础的def关键字开始,你就能创建自定义函数,通过return语句指定函数的输出。更进一步,Python引入了匿名函数lambda,允许你在无需命名的情况下定义简短的函数表达式,非常适合处理小规模、一次性使用的功能片段。

2024-07-01 22:39:27 2828 174

原创 【Python datetime模块精讲】:时间旅行者的日志,精准操控日期与时间

Python的datetime模块提供了日期和时间的类,用于处理日期和时间的算术运算。这个模块包括date、time、datetime和timedelta等类,以及tzinfo接口和timezone类。date类用于表示年、月、日,而time类表示时间。datetime类结合了日期和时间,提供了一个单一的日期时间对象。timedelta类用于表示两个日期或时间之间的差异。此外,tzinfo接口允许用户定义时区信息,而timezone类提供了时区的实现。

2024-06-26 23:03:47 3103 146

原创 【ONLYOFFICE深度探索】:ONLYOFFICE桌面编辑器8.1震撼发布,打造高效办公新境界

无论是PDF编辑的全面升级,幻灯片设计的创新突破,还是对特定语言和文化的细心考量,都体现了ONLYOFFICE致力于为全球用户提供更智能、更个性化办公体验的不懈追求。ONLYOFFICE凭借其一体化的办公套件、高效的协同编辑能力、严格的数据安全措施以及开放源代码的灵活性,正在逐步塑造未来办公的新形态。这次更新不仅带来了功能完善的PDF编辑器、全新的幻灯片版式设计,还针对特定语言用户改进了从右至左的文本显示,并增添了更多的本地化选项,为全球用户提供了更加个性化、高效的办公体验。

2024-06-24 17:18:32 3415 65

原创 【Python日志模块全面指南】:记录每一行代码的呼吸,掌握应用程序的脉搏

【代码】【Python日志模块全面指南】:记录每一行代码的呼吸,掌握应用程序的脉搏。

2024-06-20 22:10:20 4571 129

原创 植物大战僵尸杂交版全新版v2.1解决全屏问题

植物大战僵尸杂交版是由B站UP主“潜艇伟伟迷”制作的一款结合了《植物大战僵尸》原有元素与创新玩法的游戏。这款游戏以其独特的“杂交”植物概念在B站上迅速走红,吸引了大量玩家的关注和讨论。在杂交版中,每个植物都有专属的特点以及玩法,玩家只需选择合适的植物布置战斗就能轻松击败所有的僵尸。例如,豌豆向日葵每25秒可以生产25点阳光,阳光豆90秒后长大,每25秒生产25点阳光。此外,还有如阳光炸弹、火炬坚果、寒冰香蒲等多种具有特殊能力的植物。

2024-06-16 17:11:12 35059 178

原创 【Python推导式秘籍】:一行代码的艺术,高效数据处理之道

使用列表推导式可以方便地生成一个列表,并且能够对其中的元素进行变换和过滤。它是一种简洁、灵活的编程技巧,常用于数据处理和清洗等场景。在python代码执行的规则性能上面来看,其效率会更好一些;不过不建议处理过于复杂的结构,不利于代码维护及调试元组推导式及集合推导式 的操作与列表推导式相同使用字典推导式可以方便地生成一个字典,并且能够对其中的元素进行变换和过滤。它是一种简洁、灵活的编程技巧,常用于数据处理和清洗等场景。

2024-06-15 19:31:06 2749 101

原创 【Python数据魔术】:揭秘类型奥秘,赋能代码创造

需要注意的是,字符串编码和解码涉及到多种字符编码方式和错误处理方式,如果不正确地进行设置和使用,可能会导致字符集转换错误、乱码等问题。因此,在实际开发中,应该根据具体情况选择合适的编码和解码方式,并对数据的合法性进行严格的校验和处理。是常用的字符串编码和解码方法,用于将 Unicode 字符串按照指定的编码格式转换为二进制数据,并将二进制数据按照指定的编码格式解析为 Unicode 字符串。需要注意的是,这些函数返回的结果都是字符串类型,并且带有对应进制的前缀,即。参数用于设置错误处理方式,取值范围为。

2024-06-12 21:23:06 2369 136

原创 【Python核心数据结构探秘】:元组与字典的完美协奏曲

在Python中,元组是一种不可变的序列类型。当定义一个只包含一个元素的元组时,确实会出现一些特殊情况。如果你直接写作(元素),Python不会把它解析为一个元组,而是将其视为一个单纯的括号包围的表达式。为了明确表示这是一个只有一个元素的元组,你应该在元素后面加上一个逗号,即(元素,)。这是因为括号()在Python中还用于表示运算优先级,以及在函数调用时包围参数列表。为了消除歧义,当创建一个只有一个元素的元组时,添加逗号是必要的。

2024-06-10 21:52:12 3328 113

原创 【Python列表解锁】:掌握序列精髓,驾驭动态数据集合

extend 方法是列表(list)的一个内置方法,用于将一个可迭代对象(如列表、元组、字符串等)的所有元素添加到列表的末端,从而扩展原列表。列表(list)的复制可以通过多种方式实现,但直接提到的“copy方法”通常指的是使用列表的 copy() 内置方法来创建原列表的一个浅复制。pop 方法是列表(list)的一个内置方法,用于移除列表中的一个元素,并且可以返回这个被移除的元素。这意味着该方法会直接修改原列表,根据元素的值重新排列列表中的元素,而不返回一个新的排序后的列表。直接索引操作,重新赋值。

2024-06-08 20:25:04 2236 118

原创 【Python数据类型的奥秘】:构建程序基石,驾驭信息之海

非零的数字、非空的字符串、非空的列表、元组或字典都会被转换为True,而其他的值都会被转换为False。False(逻辑假)的情况:False,None,0 ,“”,(),[],{} 除了这些情况均为True,不用纠结浮点数, 0.0 0.000 等均为0,因此布尔型为False;例如,(3+4j)表示实部为3,虚部为4的复数。Python 的 math 库是一个内置函数库,提供了各种数学运算的函数,包括三角函数、指数函数、对数函数、幂函数等等。因为复数包括实部和虚部两个部分,而整数只有一个部分。

2024-06-05 23:06:53 1778 107

原创 【Linux文本编辑艺术】:从入门到熟练,Vim大师之路揭秘

Vim(Vi Improved)是一个高度可配置的文本编辑器,以其高效、强大和跨平台著称。学习使用Vim需要掌握其三种工作模式:正常模式(Normal mode)、插入模式(Insert mode)和命令模式(Command mode)。

2024-06-04 17:38:19 1417 73

原创 【Linux终端探险】:从入门到熟练,玩转基础命令的秘密(二)

touch命令是Linux和类UNIX系统中用于更新文件或目录的访问和修改时间的一个常用命令,同时,如果指定的文件不存在,touch命令还会创建一个新的空文件。确保你在执行这些命令前已经安装了相应的工具,并且位于包含这些压缩文件的目录中,或者提供了文件的完整路径。命令是一个快速且方便的方式来创建新的空文件或更新现有文件的时间戳,是Linux文件管理中的一个基础而强大的工具。如果文件已经存在,touch命令则会更新该文件的访问和修改时间,而不会改变文件内容。目录下的所有文件和目录,并显示它们的路径。

2024-06-03 17:14:13 1310 97

原创 【魅力网页的背后】:CSS基础魔法,从零打造视觉盛宴

概念写在哪css代码分为内部样式、外部样式、行内样式三种写法。内部样式写在HTML文档的标签中,style通常放置于头部:style标签可以加上这条属性,用于告诉浏览器这里是什么格式的代码,但是在HTML5规范中可以不用写。外部样式单独创建后缀的文件,然后通过link标签引入,link通常放置于头部:行内样式/内联样式直接写在标签属性中:三种方式比较样式表优点缺点使用情况使用场景行内样式表书写方便,权重高没有实现结构与样式分离,不便于维护,不可以重复利用极

2024-06-02 18:10:40 1432 74

原创 【网页搭建基石】:揭秘HTML标签的魔法世界

width与height一般情况下和图片原始尺寸保持一致(像素单位的简单介绍),不过不一致也是允许的,但是即使使用width和height缩小图片,也仅仅是视觉上的缩小,浏览器还是需要加载原始的图片资源(并不能减轻请求压力),所以当我们有图片缩放的需求时,应当提前用图片处理软件处理好了之后,再引入图片。在HTML书写某些特殊字符的时候,可能会遇到问题,比如要在网页里面显示出字符 < >,就有可能和我们的标签冲突,所以有些特殊字符需要用对应代替的写法(Tip:结合英文单词更好理解哦!

2024-06-01 20:20:10 1383 88

原创 【Python内功心法】:深挖内置函数,释放语言潜能

exec() 函数也是 Python 的一个内置函数,它用来执行储存在字符串或文件中的 Python 代码。与 eval() 类似,exec() 功能更为强大,可以执行复杂的代码块,包括声明、赋值、函数定义等,而不只是简单的表达式。enumerate是Python的一个内置函数,它在遍历(如循环)过程中为可迭代对象(如列表、元组、字符串等)的每个元素生成索引号,这样就可以同时访问到元素的索引和值。eval() 是 Python 中的一个内置函数,它的作用是执行一个字符串表达式,并返回表达式的值。

2024-06-01 09:54:07 2939 57

原创 【Linux终端探险】:从入门到熟练,玩转基础命令的秘密(一)

除了ls命令,还可以使用tree命令以树状结构查看目录,但请注意不是所有系统默认安装了tree,你可能需要先安装它。对于目录,上述命令同样适用,但需要注意的是,使用chmod、chown时,如果不加上递归选项,操作可能仅应用于目录本身,而不是其内容。mkdir 命令是 “make directories” 的缩写,是Linux和类UNIX系统中用于创建新目录的命令。这些命令提供了修改Linux系统中目录和文件属性的基本手段,使用它们时要确保具有相应的权限,并且操作要谨慎,以免造成数据丢失或权限混乱。

2024-05-29 13:36:11 2202 149

原创 【Linux环境搭建实战手册】:打造高效开发空间的秘籍

在实体计算机中能够完成的工作在虚拟机中都能够实现。其生态系统包含了丰富的软件仓库,用户可以通过方便的包管理系统安装数以千计的应用程序,满足从办公、设计、编程到娱乐的多样需求。VMware还提供了一系列工具和服务,如vRealize Suite用于云自动化和管理,以及与公有云集成的解决方案,如与阿里云合作提供的VMware服务,帮助企业无缝迁移和扩展其VMware工作负载至公有云环境。:这是VMware的核心产品,一种裸金属型的虚拟化平台,可以直接安装在物理服务器上,无需底层操作系统,用于创建和管理虚拟机。

2024-05-27 18:41:51 2503 121

原创 【Linux初探】:解锁开源世界的神秘钥匙

这为用户提供了更多的选择和自由度。此外,Linux还可以根据用户的需求进行定制和优化,使其更适合特定的应用和环境。除了以上列举的发行版外,还有许多其他的Linux发行版,如Gentoo、Mageia、Slackware等,每个发行版都有其独特的特点和适用场景。总之,Linux的灵活性和可定制性使其适用于各种不同的应用场景,为用户提供了强大的功能和自由度。Linux有许多不同的发行版(Distribution),每个发行版都基于Linux内核,并包含了不同的软件包、工具和桌面环境,以满足不同用户的需求。

2024-05-26 16:14:14 2345 125

原创 128天的创意之旅:从初心到成就,我的博客创作纪念日回顾

这段代码艺术不仅解决了实际问题,提升了产品性能,还成为了我个人技术成长的标志。它教会我,优秀的代码不仅要实现功能,更要追求效率与美学的统一,这也是我作为创作者,在技术探索道路上不懈追求的目标。通过这样的实践,我更加坚信,编程不仅是科学,也是一门需要灵感与匠心独运的艺术。

2024-05-24 23:53:27 1726 115

原创 【Python编程挑战】:单链表实现技巧与最佳实践

p(即 pre)代表目前正在遍历的结点,当计数到 3 的时候,p 的后继结点 a (即 aft)也找到了,然后生成值为 5 的结点 vtx,将 p 的后继指向 vtx,将 vtx 的后继指向 a。在单链表中,假定每个结点为LinkNode类对象,它包括存储元素的数据成员,这里用data表示,还包括存储后继结点的指针属性,这里用next表示。链表是由一个个结点组成,每个结点之间通过链接关系串联起来,每个结点都有一个后继结点,最后一个结点的后继结点为空结点。是通过链表中的指针链接次序实现的。

2024-05-22 23:51:37 1671 137

原创 人工智能视觉:基于OpenCV的人脸识别技术的深度解析

OpenCV 的全称是 Open Source Computer Vision Library,是一个跨平台的计算机视觉库。OpenCV 是由英特尔公司发起并参与开发,以 BSD 许可证授权发行,可以在商业和研究领域中免费使用。OpenCV 可用于开发实时的图像处理、计算机视觉以及模式识别程序。该程序库也可以使用英特尔公司的 IPP 进行加速处理。OpenCV 用 C++语言编写,它的主要接口也是 C++语言,但是依然保留了大量的 C 语言接口。

2024-05-19 11:57:53 3214 182

原创 【Python贪吃蛇】:编码技巧与游戏设计的完美结合

定义蛇的移动的函数# 判断是否发生了碰撞")return# 判断蛇碰到食物后的操作else:# 遍历蛇的列表画出蛇的长度# 更新,使动画的出现不是那么突兀sanke_move 函数是贪吃蛇游戏中控制蛇移动的核心函数。蛇头位置更新:通过将蛇的最后一个部分(尾部)的坐标与蛇的移动方向(aim)相加,计算出蛇头的新位置。游戏结束判断:检查新计算出的蛇头位置是否超出了游戏边界(通过inside函数判断),或者蛇头是否与蛇身的其他部分重叠(即蛇撞到自己了)。

2024-05-13 15:47:00 3905 190

原创 【Python爬虫实战入门】:教你一个程序实现PPT模版自由

我们发现我们获取的链接的后缀名是不同的,另外这些PPT都是没有名字的,不方便后续保存。到这里其实还有一个问题没有解决,除了以链接下载PPT模版外,还有通过百度网盘链接下载的,这个由于有些复杂,另外通过网盘下载的模版数量很少,这里我们可以直接跳过不下载。在第二次请求的时候我们就可以获取PPT模版的下载地址,接下来就和上面的数据提取一样,利用正则表达式将我们的PPT下载链接提取出来即可。我们发现,除了第一页的url外,从第二页开始,url都是规律变化的,那首先我们可以尝试一下在第一页的url后面加上。

2024-05-10 19:42:04 1973 146

原创 【Python爬虫实战入门】:全球天气信息爬取

requests模块官方文档requests 是 Python 编程语言中一个常用的第三方库,它可以帮助我们向 HTTP 服务器发送各种类型的请求,并处理响应。向 Web 服务器发送 GET、POST 等请求方法;在请求中添加自定义标头(headers)、URL 参数、请求体等;自动处理 cookies;返回响应内容,并对其进行解码;处理重定向和跳转等操作;检查响应状态码以及请求所消耗的时间等信息。BeautifulSoup4模块官方文档。

2024-05-07 18:15:42 2061 144

原创 【python的魅力】:教你如何用几行代码实现文本语音识别

这个库支持多种操作系统,包括 Windows、Linux 和 macOS,并且可以在没有互联网连接的情况下工作,因为它使用的是计算机上安装的本地语音引擎。SpeechLib 是微软提供的一个用于语音功能的 COM 库,它允许开发者在 Windows 平台上进行文本到语音(TTS)和语音识别的开发。通过 SpeechLib,您可以控制语音引擎的多种属性,比如语速、音量、语调以及使用的语音库。语音识别技术,也被称为自动语音识别,目标是以电脑自动将人类的语音内容转换为相应的文字和文字转换为语音。

2024-05-04 20:56:32 4772 143

原创 【C/C++基础实战】:用C++实现通讯录管理系统——含完整源码

因此我们可以把检测联系人是否存在封装成一个函数中,如果存在,返回联系人在通讯录中的位置,不存在返回-1。设计时候可以在通讯录结构体中,维护一个容量为1000的存放联系人的数组,并记录当前通讯录中联系人数量。删除联系人前,我们需要先判断用户输入的联系人是否存在,如果存在删除,不存在提示用户没有要删除的联系人。根据用户输入的联系人判断该通讯录中是否有此人,查找到进行删除,并提示删除成功,查不到提示查无此人。思路:判断如果当前通讯录中没有人员,就提示记录为空,人数大于0,显示通讯录中信息。

2024-05-02 19:30:42 3149 115

原创 【Python的魅力】:利用Pygame实现游戏坦克大战——含完整源码

敌方的坦克在初始的时候是默认 5 个的(这可以自己设置),当然,如果我方坦克被敌方坦克的子弹打中,游戏结束。在子弹类中初始化子弹,每个子弹在不同的方向发射会有不同的运动轨迹,每个子弹在坦克方向上的不同子弹发射的坐标也会有所不同。子弹类中新增方法,子弹与墙壁的碰撞,如果子弹与墙壁碰撞,修改子弹的状态,墙壁的生命值减少,如果墙壁的生命值小于等于零时候修改墙壁的状态。在子弹类中增加我方子弹碰撞敌方坦克的方法,如果发生碰撞,修改我方子弹及敌方坦克 live 属性的状态值。子弹类中,新增敌方子弹与我方坦克的碰撞。

2024-04-29 18:54:27 15483 151

原创 【数据结构与算法】:手搓顺序表(Python篇)

n - 1]的元素均向前移动一个位置(从data[i + 1]元素开始移动),这样覆盖了元素data[i],从而达到删除该元素的目的,最后将顺序表的长度减一。下面这张图中,最下面那行数字0~9代表的是元素的索引,天蓝色的柱子中的数字代表的是顺序表中的元素,顺序表中的元素必须是同一数据类型的,数据类型可以是整数、浮点数、字符串等等。该方法就是从空顺序表开始,由含若干个元素的列表a的全部元素整体创建顺序表,即依次将a中的元素添加到data列表的末尾,当出现上溢出时按实际元素个数size的两倍扩大容量。

2024-04-27 10:52:57 2701 137

原创 【数据结构与算法】:带你手搓顺序表(C/C++篇)

顺序表的元素查找,是指在顺序表中查找指定元素是否存在,如果存在则返回该元素的索引,否则返回-1。顺序表的元素插入,就是指给定一个索引和一个元素,将这个元素插入到对应的索引位置上,这个位置以后的所有元素都要往后移动一个位置。顺序表的元素删除,就是指给定一个索引,将这个索引上的元素删除,并且把这个索引位置以后的所有元素都往前移动一个位置。顺序表的元素索引,是指给定一个索引值,通过下标访问,直接在顺序表中获取元素的值,时间复杂度 O(1)。顺序表的元素修改是指将顺序表中指定位置的元素更新为新的值。

2024-04-25 09:01:52 1886 127

原创 【感受C++的魅力】:用C++演奏歌曲《起风了》——含完整源码

enum Voice_ = 0XFFX1 至 X7:这些音色从 C2 到 B2,表示较低音区的音符。这些是为了模拟某种低音乐器,如低音吉他或低音萨克斯风。L1 至 L7:这些音色从 C3 到 B3,处于中低音区,代表中音区的乐器,如中提琴或次中音萨克斯风。M1 至 M7:这些音色从 C4 到 B4,处于中央音区,通常用于模拟人声或中等音高的乐器,如小提琴或长笛。H1 至 H7:这些音色从 C5 到 B5,处于较高音区,用于模拟高音乐器,如小号或短笛。LOW_SPEED。

2024-04-19 08:11:22 8271 154

原创 【数据结构与算法】:关于时间复杂度与空间复杂度的计算(C/C++篇)——含Leetcode刷题

算法效率分析分为两种:第一种是时间效率,第二种是空间效率。时间效率被称为时间复杂度,而空间效率被称作空间复杂度。时间复杂度主要衡量的是一个算法的运行速度,而空间复杂度主要衡量一个算法所需要的额外空间,在计算机发展的早期,计算机的存储容量很小。所以对空间复杂度很是在乎。但是经过计算机行业的迅速发展,计算机的存储容量已经达到了很高的程度。所以我们如今已经不需要再特别关注一个算法的空间复杂度。

2024-04-17 21:26:37 1960 82

原创 【C语言基础】:预处理详解(二)

在C语言编程中,命令行定义指的是通过编译器的命令行参数来定义宏或者设置编译时的选项。这种方法允许开发者在不修改源代码的情况下,动态地改变编译过程和生成的程序的行为。定义宏大多数C语言编译器允许使用命令行参数来定义宏。在GCC和Clang等编译器中,可以使用 -D 选项来定义宏。【示例】:命令行定义int main()// SZ未定义i < SZ;i++)i < SZ;

2024-04-16 02:39:18 1810 109

原创 【C语言基础】:预处理详解(一)

在C语言中设置了许多的预定义符号,这些预定义符号是可以直接使用的,预定义符号也是在预处理阶段进行处理的。常见的预定义符号__FILE__ //进⾏编译的源文件__LINE__ //文件当前的行号__DATE__ //文件被编译的日期__TIME__ //文件被编译的时间__STDC__ //如果编译器遵循ANSI C,其值为1,否则未定义【示例】int main()return 0;我们在VS上使用会发现显示未定义,这也就说明VS的编译器是不完全遵循ANSI C。

2024-04-14 02:59:48 1936 93

原创 【C语言基础】:编译和链接(计算机中的翻译官)

我们在 test.c 文件中每⼀次使用 Add 函数和 g_val 的时候必须确切的知道 Add 和 g_val 的地址,但是由于每个文件是单独编译的,在编译器编译 test.c 的时候并不知道 Add 函数和 g_val变量的地址,所以暂时把调用 Add 的指令的目标地址和 g_val 的地址搁置。链接是编译过程的最后一个阶段,它负责将编译阶段生成的一个或多个目标文件与所需的库文件合并,生成最终的可执行文件。文件,每个C文件都会生成对应的目标文件,每个源文件都是经过编译器单独处理的。

2024-04-11 01:32:54 1568 94

原创 【C语言基础】:文件操作详解(后篇)

fputc函数原型将字符写入流将一个字符写入流并推进位置指示器。字符被写入流的内部位置指示器所指示的位置,然后自动向前移动一个。参数说明character: 要写入的字符,以整数形式表示。stream:指向要写入的文件的文件指针。函数返回值如果成功写入字符,则返回写入的字符,如果发生错误,则返回 EOF。【示例1】int main()// 打开文件return 1;// 写文件// 关闭文件fclose(pf);pf = NULL;return 0;【示例2】

2024-04-09 02:57:49 1854 122

原创 【C语言基础】:文件操作详解(前篇:准备知识)

文件是指存储在计算机或其他电子设备上的数据集合,通常用来存储文本、图像、音频、视频或其他类型的信息。程序文件和数据文件。

2024-04-06 16:14:31 1693 100

使用“Python+Pygame”开发一个简单坦克大战游戏

《坦克大战》是由 Namco 游戏公司开发的一款平面射击游戏,于 1985 年发售。游戏以坦克战斗及保卫基地为主题,属于策略型联机类。同时也是 FC 平台上少有的内建关卡编辑器的几个游戏之一,玩家可自己创建独特的关卡,并通过获取一些道具使坦克和基地得到强化。它看似简单但变化无穷,令人上瘾。本节将介绍使用“Python+Pygame”开发一个简单坦克大战游戏

2024-04-29

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

TA关注的人

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