自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C语言 为什么不建议在头文件中定义函数

在介绍自定义头文件的章节的时候,编写了一个在头文件中定义函数的实例,通过编译后,程序能够正常运行,但是实际上,这是不建议的。因为头文件中一般只会用来声明函数的原型,而不进行定义,否则当头文件在预处理阶段被多次展开后,即便设置了条件编译来防止重复编译的措施,但是函数还是会被多重定义,导致编译不能完成(这应该不会导致多次编译,因为多重定义后,程序会编译失败)。为什么呢?我们可以先来测试以下。

2024-04-18 07:53:05 274

原创 C++ 动态内存分配堆空间不足可采用的两种程序设计方法

C++中,使用new运算符可以在堆(内存区域)中动态地分配内存,可是当堆中的内存不足够匹配new运算符分配的空间的时候,(据文档介绍时C++11之后)动态分配内存无法完成,C++的编译器会抛出std::bad_alloc的异常(以前的版本可能不会抛出异常,但会返回一个指向NULL或nullptr的指针)。下面将通过实例来逐一进行介绍。提示:使用std::bad_alloc需要include 。:内容仅供参考,不保证正确性。

2024-04-11 08:11:26 344

原创 C/C++ 自定义头文件,及头文件结构详解

自定义头文件,是的,相当于自己“造轮子”,在实际的项目开发中比较有可能会用到,这对于提高开发效率很有帮助。下面就介绍一下自定义头文件的步骤:第一,在C源文件的同一目录下(现阶段暂且就放在同一目录下吧),创建一个".h"后缀名的文件,文件名自定义,比如test.h;第二,添加条件编译的预处理指令:一般为#ifndef#define和#endif,用于防止重复编译;第三,在#define和#endif之间,添加需要的声明和定义;如下实例代码,简单地创建了一个头文件,并定义了一个简单的函数(

2024-04-10 07:58:41 929

原创 C++ 栈和堆的作用机制,及特点区别

在介绍C++中的十分重要的动态内存管理机制之前,有必要先单独来介绍一下C++中的两个概念,分别是栈和堆。首先,应当明确的一点是栈和堆都是C++中用于存储数据的内存区域。

2024-04-07 07:22:02 163

原创 C语言两个数相除怎么得到浮点数

实例代码中,int除以int,即x除以y,并使用%f,得到的却是0.000000;int除以float,即x除以z,却使用%d,得到的却是0;有时候,使用C语言的相除运算符计算两个变量相除运算结果,可是却无法保留小数,比如3/2,打印输出是1,而不是1.5之类有小数的值。如上实例中的3/2,两个变量均为int或其它整型,相除得到的运算结果也为整型,要得到浮点数,可以将其中一个变量转换为浮点型;C语言中pirntf()函数打印输出浮点数使用的是%f占位符,而不是 %d;免责声明:内容仅供参考,不保证正确性。

2024-03-21 07:43:48 355

原创 C++ 命名空间的定义,及使用

code_block;

2024-03-20 07:56:36 282

原创 C++ cin标准输入流,及获取多个输入的方法

cin语句中,如果使用多个流提取运算符>>,便可以获取多个输入。使用cin获取到的输入值一般需要声明一个对应的类型变量来存储该输入值,比如如果需要一个double类型的输入值,那么就需要声明一个double的变量来存储。提示:cin是std命名空间中的标准输入流对象,使用之前一般需要声明using namespace std;而且std::通常可以省略。在C++中,cin与流提取运算符>>配合使用,可以用于获取标准的输入,比如从键盘上获取输入。cin是C++标准库标准库iostream中的一个类实例。

2024-03-19 09:12:55 376

原创 C++ 接口的实现,及作用通俗理解方式

想象一下,如果某个C++的项目中已经声明好了很多很有用的接口,那么很多程序就可以使用接口即插即用,就比如计算机上的很多接口(这里单单举一个USB的接口作为例子),当我们需要使用鼠标的时候,可以通过将鼠标连接到USB接口即可,如果需要外接的音响,也可以通过USB接口来连接,这同一个接口却实现了不同的功能,因为鼠标和音响的实现的功能不同——就好比派生类对基类的方法(成员函数)的定义不同,因此实现的功能不同。C++的接口通常是使用抽象类来实现的,而什么是抽象类呢?抽象类一般指的是包含一个或多个纯虚函数的类。

2024-03-18 07:53:20 688

原创 C++ 纯虚函数定义语法,及作用

因为抽象类(包含纯虚函数的类)无法被实例化,因此上面的代码编译的时候,C++的编译器会抛出:error: cannot declare variable 'banana' to be of abstract type 'Fruit'。在前面的章节中介绍C++的动态多态机制的时候,有介绍过虚函数,因为虚函数正是C++动态多态的组成部分之一(一般为成员函数)。C++接口的实现:如果一个类包含一个或多个纯虚函数,那么这个类就被称为抽象类,而C++的接口则通过抽象类来实现;免责声明:内容仅供参考,不保证正确性。

2024-03-15 10:28:54 355

原创 C++ 数据封装的方法,重点是其编程思想

通过数据封装,即将数据和操作数据的函数绑定(封装)在一个类之中,可以产生一种“局部空间”的作用,类似于局部变量,如此各个空间,即各个类就有了各自的“屏障”,可以使变量之间是互不打扰、互不污染的(安全性),然后各司其职,完成程序的工作。除此之外,值得一提的是,C++中类的成员在默认情况下(即不指定访问修饰符的情况)都是私有成员,即只能被类中的成员访问,而不能被类外部直接访问,这也是一种保护机制,就像上面所提到的“屏障”。在C++中,数据封装一般指的是将数据和操作这些数据的函数绑定在一起的程序设计方式。

2024-03-13 08:11:21 439

原创 C++ 数据抽象的设计原理和作用,结合游戏逻辑实例一目了然

如下关于C++的数据抽象的内容中的大部分是经过自己的思考后总结的,不一定是正确的,仅供参考!

2024-03-12 10:16:23 287

原创 jQuery :only-of-type选择器实例详解

如上实例,运行之后,只有第一个div中的p元素和span元素被选择,而第二个div中的两个p元素都不会被选择。这是因为,:only-of-type选择器只会匹配class为e的元素的父元素中类属性为e且元素类型也是唯一的子元素,比如第一个div中p子元素是唯一的,span也是唯一的,而第二个div中class为e的p元素有两个。即:only-of-type选择器匹配选择的子元素必须是与selector选择器类型相同(比如类属性)且元素类型唯一的子元素!:内容仅供参考,不保证正确性!

2024-01-19 08:19:03 411

原创 Python函数实现封装猜字谜游戏

还记得我们在python的while循环的那一节当中开发了一个简单的猜字游戏实例吗?在示例解析当中,我们提到了游戏代码中有一个bug,不知道大家尝试修复了没有,现在鄙人就将修复完的代码发布到这里:示例解析上面代码修复的bug是,当我们输入的值超过start, end这个区间的时候,程序就会终止,修改之后就不会了。现在,我们要将这个游戏进行封装成一个函数,好可以重复使用。我们将猜字游戏封装成一个没有返回值的函数,没有返回值的函数的调用方法如下:如果我们像继续玩这个猜字游戏,可以直接调用gues

2024-01-18 07:51:07 465

原创 C++ sizeof()运算符的参数为指针和数组的值为什么不同

C++或C语言中,都可以使用sizeof()函数来计算数组的字节大小,除此之外,在C++和C语言中,都可以使用一个指向数组第一个元素的内存地址的指针来引用数组,因此,如果要计算数组的字节大小,或长度,传递数组本身或传递指向数组的指针给sizeof()函数似乎都是可以的,实际上则不然,二者有本质上的区别。这主要是因为当sizeof()函数的参数是数组本身,将计算的是数组的大小,而如果传递的是指针作为参数,那计算的便是指针的大小,而不是整个数组的。如上代码,编译运行之后,输出的n和m的值是不同的!

2024-01-17 08:01:15 523

原创 多角度俯瞰Python函数及作用

我们应该都学过三角函数吧,比如正弦函数,在最初接触到这方面的知识的时候,我们要求sin30°是不是要去查一个叫做“三角函数值查表”的东西,然后得出sin30° = 0.5。那么问题来了,sin30°为什么会等于0.5呢?也就是说30°遇到正弦函数sin中为什么会变成0.5呢?

2024-01-16 07:56:19 386

原创 Python while循环实现猜字谜游戏

python的while更多地应用于程序的一般性循环,而不是遍历迭代对象。与其他的计算机编程语言不同,python没有do...while这样的while循环。接下来,我们将详细介绍一下Python的while循环,并用寥寥数行代码开发一个小游戏,作为实例。

2024-01-15 07:33:03 1229

原创 vscode运行Python的两种方法,及无法运行的原因

下面介绍的vscode运行Python代码的方法基于的一个前提条件是:当前的计算机已经安装好了Python,且已经配置好了相关的环境变量。:filepath.py指的是指向所要运行的python文件的路径,比如D:\python\test.py,可以是相对的路径,也可以是绝对路径,一般情况下,在VSCode中的终端,可以通过cd的命令进入python文件所在的目录当作当前的工作目录,然后直接使用文件名即可,比如:python test.py。:内容仅供参考,不保证正确性!

2024-01-12 08:08:13 2892 2

原创 vscode怎么运行程序代码的两种方法

这种情况,可以在VSCode中下载一个“open in browser”的插件,如此,在HTML代码的编辑区域内,点击“右键”,选择“open in default browser”即可使用当前系统中默认的浏览器打开HTML文件了。在VSCode中,后端代码的运行,可以从VSCode打开终端,然后使用命令行工具,使用命令来运行后端代码程序,比如Python的就可以使用命令:python file.py;VSCode要运行程序的代码,大致要分为两种情况而定,一种是前端的代码,另一种是后端的代码。

2024-01-11 08:04:10 4159

原创 Python元组tuple“删除”元素的两种函数代码设计

实际上,Python的tuple元组内的元素是不能被修改的,因此也是无法被删除的,但是,为了移除Python元组tuple内的某些元素,以获得一个新的元组,还是有其办法存在的。比如,我们可以使用for循环添加的方法,来创建一个不包含那些需要被移除的元素的新元组。()方法和append()方法来为一个新的元组添加不包含要被删除的元素的元素,其中,要被删除的元素可以通过函数的可变参数传递,然后分别将代码封装为一个函数,方便随时调用及代码的重复利用。下面的实例将设计两个函数,分别使用。

2024-01-10 07:56:23 456

原创 Java The method compareTo(Integer) in the type解决方法

Java编程过程中,Integer对象(或其它继承自Number类的包装类对象)使用Number包装类内置的compareTo()方法来比较调用对象和参数之间的大小的时候,Java的集成开发环境IDE或编译器给出了提示:The method compareTo(Integer) in the type Integer is not applicable for the arguments (Float),后类似的提示,这是怎么回事呢?:内容仅供参考,不保证正确性。

2024-01-09 08:24:16 364

原创 jQuery :nth-of-type(n)选择器的用法详解

jQuery中,:nth-of-type(n)选择器可以对selector选择器匹配选择到的所有HTML元素进行二次匹配选择,为了更好地阐述:nth-of-type(n)的语法,这里假设selector是一个元素p选择器,如此,:nth-of-type(n)可以用于匹配p元素选择器选择到的p元素指向的父元素中第n个类型为p的子元素,而且与p是否是该父元素的第n个子元素无关,比如父元素有3个子元素,分别是p、span和p,那么:nth-of-type(2)选择到的是第二个p元素,而不是第二个子元素。

2024-01-08 08:16:47 362

原创 Python列表批量删除所有指定元素的函数设计

使用Python删除列表中所有指定元素的方法可能有很多种,比如for循环之类的,但这里要设计一种可以直接通过函数传参的形式输入要删除的指定元素的方法,而且尽可能地让Python的代码足够简单的同时,能够重复利用,且方便重复利用,因此,这里将删除列表中所有指定元素的Python代码封装为一个函数。:内容仅供参考,不保证正确性。

2024-01-05 08:16:15 436

原创 jQuery文件下载方法及引入HTML语法

右键点击该页面,在弹出的菜单中选择另存为,在另存为的菜单中默认保存的后缀名为".js",如果不是,可以在下拉菜单中选择该类型的选项,然后保存即可下载jQuery文件了。鄙人下载的是最新版本的jquery-3.7.1.min.js。:jQuery的文件的扩展名是".js",下载完之后,无需安装,使用直接引入即可使用jQuery。:内容仅供参考,不保证正确性!

2024-01-04 07:48:16 1065

原创 Python如何将列表元素转换为一个个变量

内容仅供参考,不保证正确性!

2024-01-03 08:01:26 428

原创 Java JDK下载安装及Windows环境变量配置

提示:这网址里面有三个扩展名的文件,分别是“.zip”、“.exe”和“.msi”,鄙人选择的是.exe的文件,下方的安装和环境的配置也是安装该文件的安装程序进行的。下载后,直接双击即可安装。如果计算机的C盘存储不是很够,可以将文件的安装目录改换成其它的磁盘。:内容仅供参考,不保证正确性!

2024-01-02 07:44:24 409

原创 C语言函数传递了指针,值没有被修改的原因及解决方法

该实例输出了三个变量的内存地址,前两个是一样的,即通过*x++的运算,变量指向的内存地址并没有发生改变,但是如果是通过指针的自增运算,比如z++,则内存地址会发生改变。C语言函数中传递了指针作为参数,确切来说是传递了指向变量的内存地址作为参数,可经过函数内的修改之后,该指针指向的变量的值为什么不会被修改?这个跟运算符的优先级也没有关系,像上面这样的*x++的表达式中,并不会被优先计算x++,即不会先进行内存地址的自增运算。将*x++修改为:*x = *x + 1;:内容仅供参考,不保证正确性!

2024-01-01 08:09:30 572

原创 C语言共用体成员输出的值与赋值时的不同的原因

在使用C语言的共用体时,如果成员输出的值与之前定义共用体变量的时候所赋值的不同,那么很可能是因为定义共用体变量的时候,为共用体的多个成员赋值造成的。因为共用体虽然允许在同一个内存位置上存储不同的数据类型的变量,但是任何时候都只能有一个成员存储值,也就是说,当共用体内的某一个成员被赋值了,那么其它成员之前所赋的值就会丢失或损坏,这就是造成共用体成员输出的值与赋值时不同的原因了。分开为C语言共用体的成员赋值,即什么时候使用就什么时候赋值,确切来说,要使用一个新的共用体的成员时,就应该为其赋值。

2023-12-31 08:02:27 376

原创 Python提取列表中数字的函数代码设计

如果要提取Python列表list中的数字元素,首先可以使用for循环来遍历列表中的元素,然后逐个判断元素是否为数字。Python中内置了一个isinstance()函数,可以用来判断Python对象的类型,该函数接收两个参数,一个是需要查询的Python对象,另一个则是一个元素,包含了多种数据类型,如果该Python对象与该元组中的类型匹配,则返回True,否则返回False。如此,我们就有了使用Python提取列表中数字的基本思路了。下面我们将设计该函数代码。:内容仅供参考,不保证正确性。

2023-12-30 07:53:48 422

原创 HTML中img图片进行等比例缩放的实例代码

HTML中,要修改img元素定义的图片的大小,且是等比例缩放,不改变宽和高的比值,那么可以采用只设置img元素属性中width和height中的任何一个,不要同时设置两个即可实现img图片的等比例缩放效果。当然了,如果要通过同时设置img图片的width和height两个属性来达到等比例缩放图片的话也是可以的,但是要先计算一下图片的宽度和高度的比例,之后再等比例缩放。:如上面的两个实例,将width和height分别设置为50%都可以等比例缩放图片,但得到的图片的大小不一定一样。

2023-12-29 07:44:28 1734

原创 Python找出列表中的重复元素并统计个数的函数代码设计

这里的设计思路是这样子的,将list列表对象使用set()函数快速去重,然后使用for循环遍历该集合中的元素,并使用Python列表内置的count()方法来统计该元素在列表list中的个数,当count()的返回值大于1,说明该元素为列表中重复的元素。该函数存在的主要的缺陷在于字典的创建过程,因为有些Python的类型并不适合用于作为字典dict的键,比如列表、集合等,因此在使用该函数时,应当观察列表中元素的特点,否则Python有可能会抛出TypeError。:内容仅供参考,不保证正确性!

2023-12-28 07:59:24 655

原创 Python list列表中每一个数字乘于2的两种多功能函数代码设计

要让Python中list列表中的每一个数字乘于2,可以有两种方法,一是使用列表推导式来完成,另一种是使用map()函数来完成。下面将通过实例代码来之一进行介绍。:内容仅供参考,不保证正确性!

2023-12-27 08:11:28 710

原创 Python 列表查找元素位置的高级函数代码程序设计

Python中,要查找list列表中元素的位置,即元素在列表中的索引位置,可以使用list列表类型内置的方法index(),但这个并不能直接使用,因为要考虑到查找的元素可能并不存在于list列表之中,而使用index()方法查找列表中并不存在的元素,Python将抛出ValueError,程序也可能因此终止,为了避免这种情况,可以使用try excerpt语句,对Error进行捕捉处理。:内容仅供参考,不保证正确性!

2023-12-26 07:52:16 418

原创 C语言数组与指针的关系,使用指针访问数组元素方法

如果您阅读过上一章节“C语言数组返回值”中的内容,那么您是否会产生一个疑问,C语言的函数要返回一个数组,为什么要将函数的返回值类型指定为指针的类型?换句话说,C语言中数组和指针到底是什么关系呢?编译运行之后,如上代码的三个输出都是:61fe10(不同的计算机可能输出的有所不同,但三个一般都是一样的),也就是说,数组存储在内存中的地址或者说指针引用的内存地址指向的是数组第一个元素存储在内存中的地址。其中n为索引值,这相当于Array[n]换句话说,数组是一个指向该数组第一个元素内存地址的指针。

2023-12-22 07:15:58 389

原创 Python列表去重且不改变元素顺序的代码

那要在不改变列表元素顺序的前提下该如何“删除”掉重复的元素呢?这里探讨的去重方法,实际上并不是使用删除元素的方法,相反使用的是添加元素的方法,即声明一个用于最终返回的列表,用于添加该返回的列表list内没有的元素,这比删除元素要精确一些,因为如果使用原列表直接删除元素,会导致列表中后续元素索引的改变,这个会在以后的文章中专门介绍一下。:内容仅供参考,不保证正确性。

2023-12-21 08:28:30 457

原创 win10 golang下载安装,及环境变量配置

鄙人之前是使用mac做golang开发的,后来换了台图形工作站,用了windows的系统,因此只得从头下载golang安装,及进行环境变量的配置。比较方便的一点是,之前在mac osx上码的golang代码不用再敲上一遍了,因为golang可以跨平台运行,可以直接从mac上的golang代码复制到windows系统上即可。windows版的golang下载完之后,直接双击安装即可,可以选择不安装在C盘!如果输出安装golang的版本,则说明安装及配置环境变量成功。

2023-12-20 08:14:35 621

原创 VScode配置mingw C语言环境变量

【代码】VScode配置mingw C语言环境变量。

2023-12-19 09:07:21 445

原创 windows MinGW C语言编译器安装及环境变量配置教程

该安装包下载完之后,相当于安装好了MinGW,之后即可配置环境变量!所以,可以先新建好一个专门用来存放MinGW安装包的文件夹。:鄙人下载的是下方链接的页面中的MinGW-W64 GCC-8.1.0的x86_64-posix-seh。下载好安装包之后,可以参考如下步骤进行MinGW的环境配置。如果有输出相应的MinGW版本,则说明安装成功!

2023-12-15 07:49:54 600

原创 Python将字符串拆成单字的函数代码设计

要想将字符串拆成单字,在Python中有一个非常简单的方法,一行代码就可以搞定了。那就是将字符串转换成列表list即可。这个过程可以使用内置的list()函数。不过,如果是要将英文的拆分为单个单词,那么这种方法就行不通了,因为该函数会将英文单词逐个拆分为字母,如果是这种情况,可以使用split()方法来实现,主要将空格字符串传递作为参数即可,当然,如果要删除标点符号的话,可以使用正则表达式来完成,该方法返回的也是一个列表。:内容仅供参考,不保证正确性。

2023-12-14 07:18:08 69

原创 使用Python拆分一个字符串为多个子串的多功能函数代码设计

我们应该设计一个函数既可以在具有相同分隔符的情况下一次性拆分字符串,也可以在不存在一样分隔符的情况下拆分字符串,因此,我们就需要传递一个参数作为信息告诉函数的程序是否具有相同的分隔符,然后根据不同的情况执行不同的程序。不过,使用才方法时,需要注意的是参数的传递,确切来说,需要观察原字符串的特点,比如目标子串之间是否有一样的分隔符,因此,又可以将该方法的使用分成两种情况。这段代码如果有不理解或有问题的地方,可评论留言,这是自己设计的,有些复杂。

2023-12-13 08:13:59 85

原创 使用Python输出字符串中数字个数的代码设计

要通过Python的代码来统计某一个句子或某一篇文章(程序专业术语称为字符串)中数字的个数是多少,可以通过Python字符串内置的方法isdigit()来判断,但是,这个方法是判断字符串对象是否全部为数字,不包括负号和正号,所以,为了统计字符串中的数字有多少个,就应当使用for循环来遍历(当然,也可以使用Python其它的迭代方式)该字符串,然后逐个字符来判断是否为数字,如果是,则返回True,那么计数器就可以跟着+1了。如此,待循环结束就可以得到字符串中的数字个数了。运行代码,得到输出:3。

2023-12-12 08:15:46 385

空空如也

空空如也

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

TA关注的人

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