- 博客(18)
- 收藏
- 关注
原创 C++:String类的常见接口介绍和模拟实现
本文不做具体说明,请看官方的文件string的介绍需要注意的是在使用String时必须写头文件#include 和using namesplace std。
2024-10-30 11:32:18 751
原创 C++: C/C++内存管理
int main()// new/delete 和 malloc/free最大区别是 new/delete对于【自定义类型】除了开空间//还会调用构造函数和析构函数free(p1);delete p2;//内置类型也是一样的free(p3);delete(p4);free(p5);return 0;new原理1.调用operator new函数申请空间。
2024-10-20 16:23:57 778 1
原创 C++:类和对象(30小时学习,两万字箴言)
• class为定义类的关键字,Stack为类的名字,{}中为类的主体,注意类定义结束时后⾯分号不能省略。类体中内容称为类的成员:类中的变量称为类的属性或成员变量;类中的函数称为类的⽅法或者成员函数。• 为了区分成员变量,⼀般习惯上成员变量会加⼀个特殊标识,如成员变量前⾯或者后⾯加_ 或者 m开头,注意C++中这个并不是强制的,只是⼀些惯例,具体看公司的要求。• C++中struct也可以定义类,C++兼容C中struct的⽤法,同时struct升级成了类,明显的变化是。
2024-09-11 12:36:07 1006 1
原创 C++:入门基础
• 定义命名空间,需要使⽤到namespace关键字,后⾯跟命名空间的名字,然后接⼀对{}即可,{}中即为命名空间的成员。命名空间中可以定义变量/函数/类型等。• namespace本质是定义出⼀个域,这个域跟全局域各⾃独⽴,不同的域可以定义同名变量,所以下⾯的rand不在冲突了。• C++中域有函数局部域,全局域,命名空间域,类域;域影响的是编译时语法查找⼀个变量/函数/类型出处(声明或定义)的逻辑,所有有了域隔离,名字冲突就解决了。局部域和全局域除了会影响。
2024-08-04 21:03:29 1287
原创 数据结构:二叉树的链式结构及代码实现
在学习二叉树的基本操作前,需先要创建一棵二叉树,然后才能学习其相关的基本操作。由于现在大家对二叉树结构掌握还不够深入,为了降低大家学习成本,此处手动快速创建一棵简单的二叉树,快速进入二叉树操作学习,等二叉树结构了解的差不多时,我们反过头再来研究二叉树真正的创建方式。注意:上面的代码不是真正创建二叉树的代码 ,真正的创建二叉树的代码在后面重点讲解。再看二叉树基本操作前,再回顾下二叉树的概念,二叉树是::根结点,根结点的左子树、根结点的右子树组成的。
2024-07-07 19:21:48 810
原创 分支switch语句,while,for,do-while循环
除了if语句外,c语言还提供了switch语句来实现分支结构。switch语句是一种特殊形式的if...else结构,用于判断条件有多个结果的情况。根据变量a不同的值,执行相应的case分支。如果找不到对应的值,就执行default分支。注意:switch后的表达式必须是整形表达式case后的值,必须是整形常量表达式。
2024-03-21 20:25:54 1751 1
原创 c语言:if语句和操作符
c语言是结构化的程序设计语言,这里的结构指的是顺序结构,选择结构,循环结构,c语言是能够实现这三种结构的,我们可以使用if,switch实现分支结构,使用for,while,do while实现循环结构。此篇文章只介绍if语句和switch语句,循环语句在下一篇博客中介绍,好了,正文开始。1.1 ifif语句的语法形式如下:如果表达式成立(真),则语句执行,如果表达式不成立(假),则语句不执行。
2024-03-17 09:14:57 941 2
原创 scanf,输入函数
每回按下回车以后,scanf()就会开始解读,如果第一行匹配第一个占位符,那么下次按下回车键,就会从第二个占位符开始解读。上面示例中,格式字符串%d%d%d%f,表示输入的前三个是整数,后一个是浮点数,把这4个数分别放到a,b,b,c,i 中。另外,用户使用回车键,将输入分成几行,也不影响解读。上面所有占位符之中,除了%c以外,都会自动忽略起首的空白字符,%c不忽略空白字符,总是返回当前的第一个字符,scanf()处理用户输入的原理是,用户的输入先放入缓存,等到按下回车键后,按照占位符对缓存进行解读。
2024-03-15 21:23:27 1828 1
原创 强制类型转换,printf和scanf详解
2.1printf2.1.1基本用法printf()的作用是将参数文本输到屏幕。它名字里的f代表format(格式化),表示可以定制输出文本的格式。上面的指令会在屏幕上输出一行文字“Hello World"printf()不会在末尾自动添加换行符,运行结束后,光标就停留在输出结束的地方,不会自动换行。为了让光标移动到下一行的开头,可以在输出文本的末尾,添加一个换行符\n。
2024-03-12 17:20:49 1941 1
原创 操作符详解
分别是+ - * / %,这些操作符都是。注:操作符也被叫做运算符。+和-分别来完成加法和减法+和-都是有两个操作数的,位于操作符的两端的操作数,这种操作府也叫运算符*来完成乘法运算运算符/用来完成除法运算除号两端是整数,得到的结果也是整数.上述实验变量 a为double类型,但是结果是1.0,而不是1.5。原因就是在c语言中整数除法是整数,只会返回整数部分,丢弃小数部分。如果希望得到浮点数的结果,这时c语言就会进行浮点整除法。上面示例中6.0/4表示进行浮点数除法,结果就是1.5。
2024-03-09 11:01:00 621 1
原创 signed和unsigned,变量
char类型默认是否带正负号由当前系统决定,也就是说char可能等于signed char 或者等于unsigned char。例如,16位的signed short int 的取值范围为-32768—32767,最大是32767。整数变量声明为unsigned的好处是,同样长度的内存能够表示最大的整数值, 增大一倍。全局变量的使用范围更广,整个工程中想要使用,都有办法使用的。局部变量的使用范围比较局限,只能在自己所在的局部范围内使用。c语言中把经常变化的值称为变量,不变的量称为常量。
2024-03-05 17:45:34 512
原创 c语言数据类型
sizeof 运算符的返回值,C 语⾔只规定是⽆符号整数,并没有规定具体的类型,⽽是留给系统⾃⼰去决定, sizeof 到底返回什么类型。不同的系统中,返回值的类型有可能是unsigned int ,也有可能是 unsigned long ,甚⾄是 unsigned long long ,甚至是应的 printf() 占位符分别是 %u 、 %lu 和 %llu。这样不利于程序的可移植性。每一种数据类型都有自己的长度,使用不同的数据类型,能够创建长度不同的变量,变量的长度不同,存储的数据范围就有所差异。
2024-03-02 11:36:15 420
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人