自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 数据类型与变量

float 类型在 Java 中占四个字节, 同样遵守 IEEE 754 标准. 由于表示的数据精度范围较小, 一般在工程上用到浮点数都优先考虑 double, 不太推荐使用 float.在Java中,当参与运算数据类型不一致时,就会进行类型转换。对于这些经常改变的内容,在Java程序中,称为变量。存储字符,而Unicode编码包含了汉字的编码范围,因此可以存储和处理汉字。不同类型的数据之间相互运算时,数据类型小的会被提升到数据类型大的。:当进行操作时,代码需要经过一定的格式处理,不能自动完成。

2025-09-16 11:45:51 892

原创 初识java

Java语言由詹姆斯·高斯林于1991年启动开发,最初名为Oak,后因互联网发展转型为Java,并于1995年正式发布,提出"一次编译,到处运行"的理念。Java具有简单性、面向对象、分布式、健壮性、安全性等11大特性,其跨平台能力通过JVM实现字节码转换。Java程序结构由源文件、类和方法组成,运行过程需先编译为.class文件再通过JVM执行。注释包括行注释、多行注释和文档注释,标识符命名需遵循特定规则。关键字是Java预定义的保留字,用户不能用作标识符。JDK包含开发工具和JRE,

2025-09-16 10:44:09 848

原创 IDE常用快捷模板1

2025-06-17 00:14:15 140

原创 string类的模拟实现

我们在进行尾插时先要判断是否需要扩容,如果需要就使用reserve进行扩容,然后再插入字符,在尾插结束后要在该字符后面插上’\0’,否则再后续的操作中会出现非法访问,因为插入字符的后方不一定是’\0’。尾插前先要进行判断字符串的空间是否容纳得下即将要插入的字符串,若不能,则先进行增容,再将待拼接的字符串插入到原来字符串的后面,因为原来的字符串后面带有’\0’,所以我们无需在后面设置’\0’。因为拷贝对象的_str与源对象的_str指向的并不是同一块空间,所以拷贝出来的对象与源对象是互相独立的。

2025-05-23 17:03:25 1155

原创 C++类和对象(三)

若一个类没有默认构造函数,那么我们在实例化该类对象时就需要传参对其进行初始化,所以实例化没有默认构造函数的类对象时必须使用初始化列表对其进行初始化。

2025-05-14 01:42:06 698

原创 C++ 类和对象(二)---- 类的6个默认成员函数及日期类的实现

说到第6条特点,你可能会有这样的疑惑,既然我们不写的情况下,编译器会自动生成一个构造函数,那我们就不必要自己写构造函数了。这样的想法是不对的。代码举例:我们不写构造函数,于是s1对象调用了编译器自动生成的构造函数后,初始化的对象s1是随机值,那编译器自动生成的构造函数有什么意义呀?

2025-05-11 15:17:56 1039

原创 C++类和对象(一)

C++是基于面向对象的,关注的是对象,将一件事拆分成不同的对象,靠对象之间的交互完成。C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题。面向对象,那我们的关注点应该就是客户、商家以及骑手这三个类对象之间的关系。面向过程,我们的关注点应该是用户下单、骑手接单以及骑手送餐这三个过程。

2025-05-05 22:04:40 326

原创 C++入门基础

C语言是结构化和模块化的语言,适合处理较小规模的程序。对于复杂的问题,规模较大的程序,需要高度的抽象和建模时,C语言则不合适。为了解决软件危机,20世纪80年代,计算机界提出了OOP(object oriented programming:面向对象) 思想,支持面向对象的程序设计语言应运而生。1982年,Bjarne Stroustrup博士在C语言的基础上引入并扩充了面向对象的概念,发明了一种新的程序语言。为了表达该语言与C语言的渊源关系,命名为C++。因此,C++是基于C语言而产生的,它既可以。

2025-05-05 00:36:15 990

原创 C++STL详解(一)----string类

STL标准模板库是C++标准库的重要组成部分,不仅是一个可复用的组件库,而且是一个包罗数据结构与算法的软件框架。string();//构造一个空字符串s);* //复制由 s 指向的以空字符结尾的字符序列// 拷贝构造//从由 s 指向的字符数组中复制前 n 个字符// 用 n 个连续的字符 c 填充字符串。// 从字符位置 pos 开始开始复制,长度为 len 的 str 部分。

2025-04-23 19:27:48 801

原创 c++模板初阶

调用的不是函数模板,而是函数模板的实例化,这里调用了两个函数模板的实例化。比如:当用double类型使用函数模板时,编译器通过对实参类型的推演,将T确定为double类型,然后产生一份专门处理double类型的代码,对于字符类型也是如此。函数模板代表了一个函数家族,该函数模板与类型无关,在使用时被参数化,根据实参类型产生函数的特定类型版本。,然后将实例化的类型放在<>中即可,类模板名字不是真正的类,而实例化的结果才是真正的类。:编写与类型无关的通用代码,是代码复用的一种手段。什么是函数模板的实例化呢?

2025-04-17 00:22:41 678

原创 c++内存管理

class Apublic:A()int main()// new/delete 和 malloc/free最大区别是 new/delete对于【自定义类型】除了开空间还会调用构造函数和析构函数.//动态申请一个自定义类型的空间p2,并初始化为1;free(p1);delect p2;//内置类型需要强转free(p3);delect p4;//申请和释放单个元素的空间,使用new和delete操作符,申请和释放连续的空间,使用。

2025-04-16 16:52:26 999

原创 面试官可能会问

宏定义的末尾通常不加分号。其作用是在编译之前进行文本替换。若在宏定义末尾加分号,分号也会成为替换文本的一部分,从而可能导致语法错误。宏定义外面加括号是为了确保在复杂表达式中宏展开后能保持正确的优先级。宏定义里面加括号是为了确保宏参数在替换时能正确处理.后紧跟宏名,接着是宏的替换文本。,这并非我们想要的结果。,这不是我们期望的结果.

2025-04-06 22:56:14 264

原创 单链表的编程题---链表的中间结点

法,慢指针每次走一步,快指针每次走二步。让快指针去遍历链表,当快指针的下一个结点为空时,不再循环,刚好慢指针走到中间结点。遍历链表的条件不只是fast指针不为空,它指向的下一个结点也不能为空。思路2:先求链表的长度,除2求中间结点,最后返回中间结点。

2025-03-23 15:16:56 342

原创 单链表的算法题--反转链表

思路1:创建3个指针,改变链表的方向,指针n1,n2是为了反转链表的指向,n3是为了遍历链表。让n2指向n1(NULL),n3指向n2,指向就能反转了,接着往后遍历。,使n1指向NULL,n2指向头结点,n3指向n2的下一结点,因为n2是头指针,所以n2为NULL时,遍历停止。要先判断链表是否为空。

2025-03-23 02:03:00 410

原创 单链表的算法题———移除链表元素

尾结点的指针域并不为空,还指向原来链表的最后一个指针,刚好这指针指向的值为val,导致这一题没通过。所以最后我们还要判断一下尾结点的指针域是否为空,若不为,则要置NULL。思路1:我们可以先遍历链表,然后查找等于val的结点,接着进行删除。创建一个新的空链表,再定义“双指针,一个指向新链表的头结点,另一个指向新链表的尾结点。我们定义一新指针去遍历链表(为了防止出现意外指向头结点的指针找不到地址),将值不为val的结点在新的链表进行尾插,值为val的结点进行删除。平时我们的尾结点的指针域为NULL。

2025-03-23 00:43:42 210

原创 移除数组/删除有序数组/合并两个有序数组----力扣

从后往前遍历数组,下标不能为负数,有2种情况,情况2:如果,指针str指向的值与dst指向的值不相同,那么先++dst移向下一位,再将str指向的值赋给dst指向的值,str++继续往后走。第二种情况,指针src指向的值不等于val,我们让src指向的值赋给指针dst指向的值,两个指针都++,继续往后探路。思路:我们依然用上面“双指针法”,创建两个指针,但是与上一题不同的是,指针str指向起始位置,指针dst指向下一个位置。情况1:如果,指针str指向的值与dst指向的值相同,那么str++继续往后走。

2025-03-20 17:26:18 335

原创 关于预处理详解之宏的编程习题

经过搜查知道offsetof宏的定义为:#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE*)0)->MEMBER)它的内容,先将0强制转化为类型指针(强转为0的地址) 去找成员的地址,再次将成员的地址强转为size_t.,如果奇数位和偶数位交换,应该是0000 0000 0000 0000 0000 0000 0000。:当两个对应中只要有一个为1时,结果为1,只有两个对应位都为0时,结果位都为0)当两个对应都为1时,结果位才为1;从上面我们知道,这个。

2025-03-17 00:15:48 576

原创 c语言初阶之--c语言数据类型和变量

C语⾔提供了丰富的数据类型来描述⽣活中的各种数据。使⽤整型类型来描述整数,使⽤字符类型来描述字符,使⽤浮点型类型来描述⼩数。所谓“类型”,就是相似的数据所拥有的共同特征,编译器只有知道了数据的类型,才知道怎么操作数据。printf ()的标准库的头⽂件是 stdio.h ,在使用printf之前先包含头文件.printf() 的作⽤是将参数⽂本输出到屏幕。它名字⾥⾯的 f 代表format (格式化)表⽰可以定制输出⽂本的格式。为了让光标移到下⼀⾏的开头,可以在输出⽂本的结尾,添加⼀个换⾏符。

2024-12-11 22:54:11 1894

原创 关于VS中scanf报错主要原因和解决的几种方案(超详细)

原理:其实.c或者.cpp文件在创建的时候,都是在拷贝了一个文件 newc++file.cpp 如果我们在这个文件的第一行,加上: #define _CRT_SECURE_NO_WARNINGS 那么产生新的文件中就会自动有这句代码。但是scanf_s函数是VS中这个编译器提供的函数,不是C语言本身的库函数,如果在代码中使用scanf_s函数,那么我们写这个代码,只能在vs上编译,在其它编译器如:gcc、clang就不可以。将文件拖回原来的文件夹里,点击替换目标中的文件就可以了。

2024-12-09 23:40:11 2324

原创 C语言初阶之---c语言常见概念

4.1定义:C语⾔中有⼀批保留的名字的符号,⽐如:int 、if、return ,这些符号被称为保留字或者关键字。关键字都有特殊的意义,是保留给C语⾔使⽤的。程序员⾃⼰在创建标识符的时候是不能和关键字重复的。关键字也是不能⾃⼰创建的。下面是常用的32个关键字:注: (C语⾔关键字的全部介绍)

2024-11-16 15:47:02 1852 1

原创 重生之我在csdn写博客

我认为学习编程得保持足够的热爱,把它当作一件兴趣爱好去热爱去学习,这样我们更能在学习编程的道路越走越远。学习方法也很重要,我认为学习的过程就是输入输出的过程,理论知识的吸取就是输入过程,自己亲手去敲代码去实践就是输出过程,写博客也是这样的一个过程。近期的小目标就是学习了C语言后,自己能够编写一些小项目,比如贪吃蛇、五子棋之类的。暂时还没有最想进入的一家公司,不过,想去其他大厂实习、或者小米实习,因为我是米粉哈哈哈。每周至少也要35个小时,平均每天5个小时左右,用于知识的输入和输出,但也会不断的调整。

2024-10-11 20:48:42 245

空空如也

空空如也

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

TA关注的人

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