
c++语法
*匠心独具*
目前学生一枚,致力成为一名程序猿。会在博客中分享自己的所学,希望大家支持。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
后缀表达式的计算
对于数字全部进栈 对于符号,从栈中弹出右操作数,然后从栈中弹出左操作数,根据符号进行相应的计算,然后运算结果在次压入栈中 直到剩下一个值 /*基于后缀表达式的计算问题 对于数字全部进栈 对于符号,从栈中弹出右操作数,然后从栈中弹出左操作数,根据符号进行相应的计算,然后运算结果在次压入栈中 直到剩下一个值*/ #include <iostream> #pragma warning(disable:4996) using namespace std; typedef struct LINKNODE原创 2022-02-24 23:12:55 · 239 阅读 · 0 评论 -
中缀表达式转后缀表达式
中缀表达式就是常见的数学表达式,但是把运算符放到数字的后面会更加符合计算机的运算 例如5+4= 就是一个中缀表达式 而它的后缀表达式应该是 5 4+ 1+2*3 变成 1 2 3 * + 中缀转后缀的算法 对于数字直接输出 对于括号:左括号入栈。如果是运算符号的话,就与栈顶符号进行优先级比较, 如果栈顶符号优先级低,则此符号入栈,如果栈顶符号优先级高,则将栈顶的符号弹出输出,然后该符号入栈 右括号:将栈顶的符号弹出并输出,直到匹配到左括号 #include <iostream> #pra原创 2022-02-24 19:43:29 · 178 阅读 · 0 评论 -
括号匹配(栈)
日常编程中,我们都会用到编译器,但如果我们编写的代码在出现了问题,例如左右括号没有完全的匹配的时候,程序就无法通过运行,这个时候编译器就会报错,那么我们探究一下编译器是如何检查出这个错误的。 首先我们知道一个程序就像是一个字符串(忽略空格),我们的括号匹配问题就应在这个字符串中进行处理和查找。但是我们知道相邻的括号是一组,而不是最里面和最外面的随意匹配,因此在多个括号组中,往往最开始的括号是最后一个匹配的,这非常符合栈的先进后出原则,因此我们可以使用一个栈来保存这些括号。 这个时候我们的编译器挨个去扫描字原创 2022-02-23 22:12:02 · 1004 阅读 · 0 评论 -
企业链表的实现
企业链表中将信息单独成为一个节点,然后将next信息,单独分配,这样的话就像一个衣架的挂钩一样,使得链表上的操作可以更加高效和灵活。 #include<iostream> #include<iomanip> #pragma warning (disable:4996) using namespace std; //链表节点 typedef struct LINKNODE { LINKNODE* next; }Linknode; typedef struct LINKLIST原创 2022-02-10 21:51:16 · 573 阅读 · 1 评论 -
链表的完整实现
我们知道可以单纯的使用c来模拟一个vector动态数组,可是我们上一次并没有实现,可以传递任意数据来进行数组保存的效果,那我们本次就实现一个动态储存的链表结构并且让他能够接受任何数据。 那么什么是链表呢? 链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。 简单来说链表就像一串珠子一样,是靠着一条线进行连接的。 首先我们明确一下链表和普通的数组的优点: 链表的优点在于每次插入数据不需要把后面的数据进行大量的移动,而是直接把需要插入的数据和插入位置的前原创 2022-02-08 21:54:22 · 575 阅读 · 0 评论 -
动态数组实现
在c++中,vector是一个十分有用的容器。 作用:它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。 vector在C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。 但是万物基于c/c++,那么我们手动尝试着去做一个这样的动态数组容器。在这里我们用到了结构体,以及动态内存,来实现动态内存应有的插入删除初始化,以及查找功能。代码如下: #include<iostream> #include原创 2022-02-07 18:58:29 · 924 阅读 · 0 评论 -
名称空间总结
一:命名空间的特点 用途:解决命名冲突问题 1.命名空间下可以放函数、常量、变量、结构体、类 namespace A{ int a = 10; //定义了变量 const int c = 2; //定义了常量 void b(){ //定义了函数 } struct test_struct { //定义了结构体 }; class Person{ /...原创 2020-04-17 16:03:49 · 363 阅读 · 0 评论 -
this指针详解
我们都知道类的成员函数可以访问类的数据(限定符只是限定于类外的一些操作,类内的一切对于成员函数来说都是透明的),那么成员函数如何知道哪个对象的数据成员要被操作呢,原因在于每个对象都拥有一个指针:this指针,通过this指针来访问自己的地址。注:this指针并不是对象的一部分,this指针所占的内存大小是不会反应在sizeof操作符上的。this指针的类型取决于使用this指针的成员函数类型以及对...原创 2020-04-17 15:58:05 · 4824 阅读 · 0 评论