自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 资源 (4)
  • 收藏
  • 关注

原创 C++学习笔记--移动语义和右值引用:现代C++基础

接上文接下来将介绍在C++11中的移动语义、值类别和右值引用。左值表达式具有标识值得注意的是,名称表达式是左值,以及任何导致引用命名实体的复合表达式也是左值纯右值没有标识所有字面值都是纯右值(字符串字面值除外,它们是左值),以及表示临时值的表达式也是纯右值亡值是将左值表达式标记为即将过期的结果当不再需要底层变量的内容时,在左值表达式上使用移动转换。

2023-09-17 20:40:15 174

原创 C++学习笔记--函数重载(2)

未完待续。

2023-09-07 10:46:36 396

原创 C++学习笔记--函数重载(1)

同样,在 AB 下查找失败,接着在 A 和 B 下进行查找,依旧失败,于是接着到 Y 和 Z 下面查找,最终找到 Y::h(int) 和 Z::h(double) 两个结果。此时重载决议出现,发现后者才是更好的选择,于是最终选择 Z::h(double)。通过这个例子,相信大家已经具备分析 Namespace Member Lookup 名称查找流程的能力。接着再补充几个需要注意的点。第一点,

2023-09-05 13:49:20 237

原创 Java多线程----消费者/生产者模型

前言生产者和消费者问题是线程模型中的经典问题:生产者和消费者在同一时间段内共用同一个存储空间,生产者往存储空间中添加产品,消费者从存储空间中取走产品,当存储空间为空时,消费者阻塞,当存储空间满时,生产者阻塞。/** * @description 生产者/消费者:生产者生产了产品,消费者才能消费产品 **/public class Day63 { /** * product:1--有产品,0--没产品 */ static int product = 0;

2021-10-19 16:38:19 144

原创 Java--多线程:一个变量初始值100,一个任务对它进行50次自增操作,而另外一个任务对它进行50次自减操作。

Java--多线程:一个变量初始值100,一个任务对它进行50次自增操作,而另外一个任务对它进行50次自减操作。题目:一个变量初始值100,一个任务对它进行50次自增操作,而另外一个任务对它进行50次自减操作。思路:将操作的共同数据,同步锁,共同方法放到同一个类中,再由线程调用这个类对象.代码:题目:一个变量初始值100,一个任务对它进行50次自增操作,而另外一个任务对它进行50次自减操作。思路:将操作的共同数据,同步锁,共同方法放到同一个类中,再由线程调用这个类对象.代码:public class

2021-10-18 20:52:34 404

原创 C/C++语言中的NULL等于0吗????

在开始今天的主题之前,我们先来看一下C/C++中关于NULL的标准定义:#ifndef NULL #ifdef __cplusplus #define NULL 0 #else #define NULL ((void *)0) #endif#endif编译器预先定义了一个宏_cplusplus,来判断当前的编译环境是C++还是C语言的,在C++定义为0,在C语言中定义为(void *)0。在C/C++中的区别在C语言中,C中的标准写法,NU

2020-11-12 23:48:58 6409 3

原创 Python3教程(1)----搭建Python环境

1.1搭建编程环境1.1.1 Python2和Python3当前,Python有两个不同的版本:Python2和Python3。尽量使用Python3版本,Python2已经不再支持更新。1.1.2 运行Python代码片段Python自带了一个在终端窗口运行的解释器,可以无需保存就能运行Python代码片段。如下片段:加粗的文本表示需要你输入之后按回车键来执行的代码。1.1.3 Hello World程序要使用Python编写Hello World程序,只需要一行...

2020-10-31 22:14:43 162

原创 C++字符串

C++字符串C++提供了一下两种类型的字符串表示形式:C风格字符串C++引入的字符串C风格字符串C风格的字符串起源于C语言,并在C++中继续得到支持。字符串实际上是使用null字符 "\0"终止的一堆字符数组。因此,一个以null结尾的字符串,包含了组成字符串的字符。下面的声明和初始化创建了一个"Hello"字符串。由于在数组的末尾存储了空字符,所以字符数组的大小比单词"Hell...

2019-10-21 23:52:06 170

原创 C++数组

C++数组C++支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合。数组是用来存储一系列数据,但它往往被认为是一系列相同类型的变量。数组的声明并不是声明一个个单独的变量,比如number0、number1、…、number99,而是声明一个数组变量、比如numbers,然后使用numbers[0],number[1]、…、number[99]来代表一个个单独的变量。数组中的特定元...

2019-10-19 21:45:11 1834

原创 C++数字

C++数字通常,当我们需要用到数字时,我们会使用原始的数据类型,如int、short、long、float和double等等。这些用于数字的数据类型,其可能的值和数值范围,前面已经讨论过了,这里不做过多赘述。C++定义数字实例#include <iostream>using namespace std; int main (){ // 数字定义 short ...

2019-10-19 00:25:01 181

原创 C++函数

C++函数函数是一组一起执行任务的语句。每个C++程序都至少有一个函数,即主函数main(),所有简单的程序都可以定义其他额外的函数。可以把代码划分到不同的函数中。如何划分代码到不同的函数中由自己决定,但在逻辑上,划分通常是根据每个函数执行一个特定的任务进行的。函数声明告诉编译器函数的名称、返回类型和参数。函数定义提供了函数的实际主体。C++标准函数库提供了大量的程序可以调用的内置函数。例...

2019-10-17 21:52:33 147

转载 C++判断方式

C++判断C++判断结构与C语言大同小异,请参阅下述链接的内容,谢谢!!https://blog.csdn.net/weixin_44006265/article/details/99303023

2019-10-16 20:08:24 235

原创 C标准库之 -- assert.h

C标准库—<assert.h>简介C标准库的assert.h头文件提供了一个名为assert的宏,它可用于验证程序做出的假设,并在假设为假时输出诊断消息。已定义的宏assert执行另一个宏NDEBUG,宏NDEBUG不是<assert.h>的一部分。如果已在引用<assert.h>的源文件中定义NDEBUG为宏名称,则assert宏的定义如下:#defi...

2019-10-16 17:29:58 547 1

原创 C++知识点总结

C++简介C++是一种静态类型的、编译式的、通用的、大小写敏感的、不规则的编程语言、支持过程化编程、面向对象编程和泛型编程。C++被认为是一种中级语言,它综合了高级语言和低级语言的特点。C++是由 Bjarne Stroustrup于1979年在贝尔实验室开始设计开发的。C++进一步扩充和完善科C语言,最初命名为带类的C,后来在1983年更名为C++。C++是C的一个超集,事实上,任何合法...

2019-09-13 23:53:00 384

原创 C语言学习笔记--经典排序算法

排序算法冒泡排序冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序(从小到大,首字母a到z)错误就把他们交换过来。过程演示:实例:#include <stdio.h>void bubble_sort(int arr[], int len) { int i, j, temp; for (i = 0; i < le...

2019-08-26 16:53:59 184

原创 C语言学习笔记--递归、可变参数及内存管理

递归递归指的是在函数的定义中使用函数自身的方法。 举个例子: 从前有座山,山里有座庙,庙里有个老和尚,正在给小和尚讲故事呢!故事是什么呢? "从前有座山,山里有座庙,庙里有个老和尚,正在给小和尚讲故事呢!故事是什么呢? '从前有座山,山里有座庙,庙里有个老和尚,正在给小和尚讲故事呢!故事是什么呢?……'"语法格式如下:void recursion(){...

2019-08-25 23:08:54 318

原创 C语言学习笔记--强制类型转换及错误处理

强制类型转换强制类型转换是把变量从一种类型转换为另一种数据类型。例如,如果你想存储一个long类型的值到一个简单的整型中,需要把long类型强制转换为int类型。可以使用强制类型转换运算符来把值显示地从一种类型转换为另一种类型,如下所示:(type_name) expression看下面的实例,使用强制类型转换运算符把一个整数变量除以另一个整数变量,得到一个浮点数:实例:#includ...

2019-08-25 14:58:53 3501

原创 C语言学习笔记--C预处理器与头文件

C预处理器C预处理器不是编译器的组成部分,但是它是编译过程中一个单独的步骤。简言之,C预处理器只不过是一个文本替换工具而已,它们会指示编译器在实际编译之前完成所需的预处理。所有的预处理器命令都是以井号(#)开头。它必须是第一个非空字符,为了增强可读性,预处理器指令应从第一列开始。下面列出了所有重要的预处理器命令:指令描述#define定义宏#include包含一...

2019-08-24 21:48:01 535

原创 C语言学习笔记--文件读写

C文件读写本节将介绍如何创建、打开、关闭文本文件或二进制文件。一个文件,无论是文本文件还是二进制文件,都是代表了一系列的字节。C语言不仅提供了访问顶层的函数,也提供了底层调用来处理存储设备上的文件。打开文件可以使用fopen()函数来创建一个新的文件或者打开一个已有的文件,这个调用会初始化类型FILE包含了所有用来控制流的必要的信息。下面是这个函数调用的原型:FILE *fopen(co...

2019-08-21 00:27:54 289

原创 C语言学习笔记--C位域&typedef

位域如果程序的结构中包含多个开关量,只有TRUE/FALSE变量,如下:struct{ unsigned int widthValidated; unsigned int heightValidated;} status;这种结构需要8字节的内存空间,但实际上,在每个变量中,我们只存储0或1。在这种情况下,C语言提供了一种更好的利用内存空间的方式。如果在结构中使用这样的变量,可...

2019-08-18 21:37:57 595

原创 C语言学习笔记--C共用体

共用体共用体是一种特殊的数据类型,允许在相同的内存位置存储不同的数据类型。可以定义一个带有多成员的共用体,但是任何时候只能有一个成员带有值。共用体提供了一种使用相同的内存位置的有效方式。定义共用体为了定义共用体,必须使用union语句,方式与定义结构类似。union语句定义了一个新的数据类型,带有多个成员。union语句的格式如下:union [union tag]{ member...

2019-08-17 17:11:54 174

原创 C语言学习笔记--C结构体

结构体C数组允许定义可存储相同类型数据项的变量,结构是C编程中另一种用户自定义的可用的数据类型,它允许存储不同类型的数据项。结构用于表示一条记录,假设你想要跟踪图书馆中书本的动态,可能需要跟踪每本书的下列属性:Title;Author;Subject;Book ID。定义结构为了定义结构,必须使用struct语句。struct语句定义了一个包含多个成员的新的数据类型,struct语句的格式...

2019-08-17 15:10:10 180

原创 C语言学习笔记--C字符串

C字符串在C语言中,字符串实际上时使用了null字符‘\0’终止的一维字符数组。因此,一个以null结尾的字符串,包含了组成字符串的字符。下面的声明和初始化创建了一个“Hello”字符串。由于在数组的末尾存储了空字符,所以字符数组的大小比单词“Hello”的字符多一个。char greeting[6]={'H','e','l','l','o','\0'};依据数组初始化规则,可以把上面的...

2019-08-16 21:50:11 206

原创 C语言学习笔记--函数指针与回调函数

函数指针函数指针是指向函数的指针变量。通常我们说的指针变量是指向一个整型、字符型或数组等变量,而函数指针是指向函数。函数指针可以像一般函数一样,用于调用函数、传递参数。函数指针变量的声明:typedef int(*fun_ptr)(int,int);//声明一个指向同样参数、返回值的函数指针类型实例:以下实例声明了函数指针变量p,指向函数max;#include<stdio...

2019-08-16 20:22:12 224

原创 C语言学习笔记--C指针

C指针通过指针,可以简化一些C编程任务的执行,还有一些任务,如动态内存分配,没有指针是无法执行的。所以,学习指针是很有必要的。每一个变量都有一个内存位置,每一个内存位置都定义了可使用连字号(&)运算符访问的地址,它表示了在内存中的一个地址。下面实例,将输出定义的变量地址:实例:#include <stdio.h> int main (){ int var1...

2019-08-16 17:09:03 434 1

原创 C语言学习笔记--enum(枚举)

enum(枚举)枚举是C语言中的一种基本数据类型,它可以让数据更简洁,更易读。枚举语法定义格式为:enum 枚举名 {枚举元素1,枚举元素2,...};举个例子,比如:一星期有7天,如果不用枚举,我们需要使用#define来为每一个整数定义一个别名:#define MON 1#define TUE 2#define WED 3#define THU 4#define F...

2019-08-15 23:44:38 253

原创 C语言学习笔记--C数组

C数组C语言支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合。数组是用来存储一系列数据,但它往往被认为是一系列相同类型的变量。数组的声明并不是一个个单独的变量,比如number0、number1、…、number99,而是声明一个数组变量,比如numbers,然后使用number[0]、numbers[1]、…、numbers[99]来代表一个个单独的变量。数组中特定元素可以通...

2019-08-15 19:16:01 374

原创 C语言学习笔记--C作用域规则

C作用域规则任何一种编程中,作用域是程序中定义的变量所存在的区域,超过该区域变量就不能被访问。C语言中有三个地方可以声明变量:在函数或块内部的局部变量在所有函数外部的全局变量在形式参数的函数参数定义中局部变量在某个函数或块的内部声明的变量称为局部变量。它们只能被该函数或代码块内部的语句使用。局部变量在函数外部是不可知的。下面是使用局部变量的实例。在这里,所有的变量a、b和c是mai...

2019-08-14 20:26:18 239

原创 C语言学习笔记--C函数

C函数函数是一组一起执行一个任务的语句。每个C程序都至少有一个函数,即主函数main(),所有简单的程序都可以定义其他额外的函数。可以把代码划分到不同的函数中。如何划分代码到不同的函数中是由自己决定的,但是在逻辑上,划分通常是根据每个函数执行一个特定的任务来进行的。函数声明告诉编译器函数的名称、返回类型和参数。函数定义提供了函数的实际主体。C标准库提供了大量的程序可以调用的内置函数。例如,...

2019-08-14 19:19:00 431

原创 C语言学习笔记--C循环

C循环有的时候,我们可能需要多次执行同一块代码。一般情况下,语句是按顺序执行的:函数中的第一个语句限制性,接着是第二个语句,依次类推。编程语言提供了更为复杂执行路径的多种控制结构。循环语句允许我们多次执行一个语句或语句组,下面是大多数编程语言中循环语句的流程图:循环类型C语言提供了一下几种循环类型。循环类型描述while循环当给定条件为真时,重复语句或语句组。它...

2019-08-13 20:39:42 559

原创 C语言学习笔记--C判断类型

C判断判断结构要求程序员制定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句(可选的)。C语言把任何非零和非空的值假定为true,把零或null假定为false。下面是大多数编程语言中典型的判断结构的一般形式:判断语句C语言提供了一下类型的判断语句。语句描述if语句一个if语句由一个布尔表达式后跟一个或多个语句组成。...

2019-08-13 01:12:30 3361

原创 C语言学习笔记--C运算符

C运算符运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。C语言内置了丰富的运算符,并提供了一下类型的运算符:算术运算符关系运算符逻辑运算符位运算符赋值运算符杂项运算符本章将逐一介绍算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符和其他运算符。算术运算符下表显示了C语言支持的所有的算术运算符。假设变量A的值为10,变量B的值为20,则:运算符描述实...

2019-08-12 00:42:56 518

原创 C语言学习笔记--C存储类

C存储类存储类定义C程序中变量与函数的范围(可见性)和生命周期。这些说明符放置在它们所修饰的类型之前。下面列出C程序中可用的存储类:autoregisterstaticexternauto存储类auto普通局部栈变量,是自动存储,这种对象会自动创建和销毁,建议这个变量要放在堆栈上面,调用函数的分配内存,函数结束时释放内存。一般隐藏auto默认为自动存储类别。我们程序变量大多是自动...

2019-08-10 16:54:48 188

原创 C语言学习笔记--C常量

C常量常量是固定值,在程序执行期间不会改变。这些固定值,又叫字面量。常量可以是任何的基本数据类型,比如整数常量、浮点常量、字符常量、或字符串字面值,也有枚举常量。常量就像是常规的变量,只不过常量的值在定义后不能进行修改。整数常量整数常量可以是十进制、八进制或十六进制的常量。前缀指定基数:0x或0X表示十六进制,0表示八进制,不带前缀则默认表示十进制。整数常量也可以带一个后缀,后缀是U和...

2019-08-09 14:04:09 273

原创 C语言学习笔记--C变量

C变量变量其实只不过是程序可操作的存储区的名称。C中每个变量都有特定的类型,类型决定了变量存储的大小和布局,该范围内的值都可以存储在内存中,运算符可应用于变量上。变量的名称可以由字母、数字和下划线字符组成。它必须以字母或下划线开头。大写字母和小写字母是不同的,因为C是对大小写敏感的。有以下几种基本的变量类型:类型描述char通常是一个字节(八位)。这是一个整数类型...

2019-08-09 00:13:05 325

原创 C语言学习笔记--C数据类型

C数据结构在C语言中,数据类型指的是用于声明不同类型的变量或函数的一个广泛的系统。变量的类型决定了变量存储占用的空间,以及如何解释存储的位模式。C中的类型可分为以下几种:序号类型与描述1基本类型:它们是算术类型,包括两种类型:整数类型和浮点类型。2枚举类型:它们也是算术类型,被用来定义在程序中智能赋予其一定的离散整数值得变量。3void类型:类型说明符v...

2019-08-06 15:22:44 385 1

原创 C语言学习笔记--C基本语法

**C基本语法**前一个博客已经看过C程序的基本结构,这将有助于我们礼节C语言的其他基本的构建块。C的令牌C程序有各种令牌组成,令牌可以使关键字、标识符、常量、字符串值,或者是一个符号。例如,下面的C语句包括五个令牌:printf("Hello,World!\n");这五个令牌分别是:printf("Hello,World!\n");分号;在C程序中,分号是语句结束...

2019-07-28 21:54:45 743

原创 C语言学习笔记---C程序结构

**C 程序结构**在我们学习 C 语言的基本构建块之前,让我们先来看看一个最小的 C 程序结构,在接下来的章节中可以以此作为参考。C Hello World 实例C 程序主要包括以下部分:预处理器指令函数变量语句 & 表达式注释让我们看一段简单的代码,可以输出单词 “Hello World”:实例#include <stdio.h>int ma...

2019-07-26 19:10:25 134

C++之球球大作战.rar

这是基于vs2019,用C++编写的一个球球大作战游戏,适合初学者,代码比较精简,作用很大,适合初学者。

2019-08-31

pdf转换器.exe

本工具是PDF转换器,可以免费将PDF文档转换为word,excel,ppt等文档,方便快捷。

2019-06-14

计算机组成原理知识点总结.docx

这是计算机组成原理知识点总结,参考书籍是《计算机组成原理--面向实践能力培养》第四版,主编是纪禄平教授。

2019-06-14

空空如也

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

TA关注的人

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