找回密码
 立即注册
一篇解决编译原理大作业,基于Flex、Bison设计编译器(含语法分析树和符号表)
1.工具简单介绍 Flex 和 Bison 是编译器开发中常用的两个工具,分别用于生成词法分析器和语法分析器。它们通常一起使用,共同完成源代码的词法分析和语法分析工作。 Flex: Flex通过读取一个规则文件(通常是.l文件),这个文件中定义了一 ...
赖琳芳 2025-6-4 16:59
77 0 0
GDB调试(一)
GDB调试 GDB简介 GDB的功能 GDB(GNU Debugger)是用于调试 C、C++ 等语言的强大工具。它允许开发者执行以下操作: [*]启动程序并按照预期条件暂停(如断点处)。 [*]检查程序中的变量和内存状态。 [*]单步执行代码,观察每一步的变 ...
厌外 2025-6-4 16:58
849 0 0
入门数据结构的心得1(单链表篇)
目前正在学习数据结构,刚刚学到单链表,写了一份简单的代码,自己来缕缕思路。 先上题: 就是一个很简单的用单链表实现多项式加减。 来源:程序园用户自行投稿发布,如果侵权,请联系站长删除 免责声明:如果侵犯了您的权益,请联系站长 ...
灼巾 2025-6-4 16:58
46 0 0
C语言总笔记
优先级最高的并不是真正意思上的运算符 单目运算符 双目运算符 ​ 1eg 二分查找 有序升序数组查找target,没有则返回-1 Binary Search Tree:二叉搜索树(BST):降低搜索复杂度 特点:每一个根节点一定比左节点大,比右节点小 链表 ...
鞠古香 2025-6-4 16:57
646 0 0
位运算
按位逻辑运算 取反 ~ 一元运算符~把1变为0,把0变为1 按位与 & 二元运算符&通过逐位比较两个运算对象,生成一个新值。对于每个位,只有两个运算对象中相应的位都为1时,结果才为1 按位或 | 二元运算符&通过逐位比较两个运算对象,生 ...
周冰心 2025-6-4 16:57
230 0 0
USB-TTL连接ESP8266不识别串口/串口助手回复乱码
做项目的时候新上手了ESP8266,模块测试的时候发现串口软件识别串口不稳定,换多个串口助手后仍无法解决,疑似硬件问题 此时接线为 后查询得知USB-TTL的3V3供电不满足ESP8266使用,疑似电流不够,但手边没仪器无法求证 可考虑跳线帽短 ...
滥眩 2025-6-4 16:56
692 0 0
P5665 [CSP-S2019] 划分
思路: 首先求出 \(a\) 的前缀和数组 \(s\)。 考虑动态规划,令 \(dp_{i,j}\) 表示以 \(i\) 结尾,末尾有 \(j\) 个为一组的最小答案,则状态转移方程为: \[dp_{i,j} = \min [s_{i-j}-s_{i-j-k} \le s_i - s_{i-j}] dp_{i-j,k} + (s_i ...
巴沛若 2025-6-4 16:56
256 0 0
P2150 [NOI2015] 寿司晚宴
思路: 注意到对于每个数,其 \(>19\) 的质因数最多只有 \(1\) 个,称为大质数;对于 \(\le 19\) 的质因数有 \(8\) 个,称为小质数。 设第 \(i\) 个数的小质数集合为 \(h_i\)。 那么考虑对于所有数按照大质数从小到大排序,那么对于大质 ...
丧血槌 2025-6-4 16:56
866 0 0
VSCode系列 - 如何用VSCode搭建C++高效开发环境(2)
[*]1. 插件的用法 [*]1.1. C/C++ [*]1.1.1. 插件介绍 [*]1.1.2. 插件配置 [*]1.2. Clang-Format [*]1.3. cpp-check-lint [*]1.3.1. cpplint [*]1.3.2. cppcheck [*]1.3.3. 插件的使用 [*]1.4. C/C++ Advanced Lint [*]1.4.1. 插件 ...
讲怔 2025-6-4 16:55
533 0 0
P2831 [NOIP2016 提高组] 愤怒的小鸟
思路: 考虑先求出经过 \((x_1,y_1),(x_2,y_2)\) 的抛物线解析式 我们有: \[\begin{cases} ax_1^2 + bx_1 = y_1 \\ ax_2^2 + bx_2 = y_2\end{cases}\] 考虑将 \(b\) 消掉,求出 \(a\)。 那么考虑令 \(1\) 式减去 \(2\) 式的 \(\frac{x ...
静轾 2025-6-4 16:55
223 0 0
文件IO-文件操作(1)
打开文件 打开文件函数说明 读取数据 函数大体分为三类:字符读取(fgetc)、按行读取(fgets)、按块读取(fread)。 字符读取 按行读取 按块读取 feof函数 此函数用于判断是否到达文件的末尾 ferror函数 判断是否出错 来源:程 ...
姥恫 2025-6-4 16:55
248 0 0
洛谷P1209修理牛棚 Barn Repair
修理牛棚 Barn Repair 题目描述 在一个月黑风高的暴风雨夜,Farmer John 的牛棚的屋顶、门被吹飞了 好在许多牛正在度假,所以牛棚没有住满。 牛棚一个紧挨着另一个被排成一行,牛就住在里面过夜。有些牛棚里有牛,有些没有。 所有的牛 ...
任修 2025-6-4 16:55
679 0 0
10年工龄的90后程序员折腾博客的这些年
1. 2011.09.14 2011.09.14,当时还在读大二的我在CSDN写了第一篇技术博客《Java中的50个关键字)》。 当时,在百度搜索技术问题的时候,经常能搜到CSDN里大牛写的文章,觉得非常厉害,非常崇拜他们。然后就向他们学习,尝试着自己也写一 ...
仁夹篇 2025-6-4 16:55
475 0 0
一文搞懂C/C++常用编译器
[*]1. C++ 编译器介绍 [*]1.1. MSVC [*]1.1.1. Visual C++与Visual Studio的版本对应关系 [*]1.1.2. 工具链的主要工具 [*]1.2. GCC [*]1.2.1. GCC的主要优点 [*]1.2.2. GCC的常用工具 [*]1.2.3. MinGW [*]1.3. Clang/LLVM [*]1.3. ...
圄旧剖 2025-6-4 16:55
200 0 0
运用Npcap库实现SYN半开放扫描
Npcap 是一款高性能的网络捕获和数据包分析库,作为 Nmap 项目的一部分,Npcap 可用于捕获、发送和分析网络数据包。本章将介绍如何使用 Npcap 库来实现半开放扫描功能。TCP SYN 半开放扫描是一种常见且广泛使用的端口扫描技术,用于探测 ...
峰埋姚 2025-6-4 16:54
87 0 0
学嵌入式C语言,看这一篇就够了(4)
C语言的输入输出 C语言标准在发布的同时,ANSI组织同时也一起发布了和C语言相关的函数库,也就是标准C库,标准C库集成了很多的API函数接口,比如常用的输入和输出函数就是标准C库提供的 用户如果打算使用标准C库的函数,就必须要包含函 ...
映各 2025-6-4 16:54
72 0 0
Linux C++ 开发2 - 编写、编译、执行第一个程序
上一篇《Linux C++ 开发1 - 搭建C++开发环境》我们搭建好了C++的开发环境,本篇我们将编写、编译、执行第一个程序。 1. 第一个C++程序 1.1. demo01.cpp 这里写一个最简单的HelloWord程序 [code]#include int main(){ std::cout ...
殷罗绮 2025-6-4 16:54
863 0 0
汇编语言1 - 什么是汇编语言?
[*]1. 什么是汇编语言? [*]1.1. 汇编语言的定义 [*]1.2. 汇编语言与机器语言 [*]1.2.1. 相同点 [*]1.2.2. 不同点 [*]2. 汇编语言的主要特点 [*]3. 汇编语言的基本组成 [*]4. 汇编器 [*]4.1. 主要工作流程 [*]4.2. 常见的汇编器 [ ...
溶绚 2025-6-4 16:54
237 0 0
大根堆和小根堆的介绍
堆(Heap)的基本概念 堆是一种完全二叉树(Complete Binary Tree),其性质使得堆可以高效地支持以下操作: [*]插入(Insert):将一个新元素加入到堆中。 [*]删除最大/最小元素(Delete Max/Min):移除并返回堆中的最大(大根堆)或 ...
姬宜欣 2025-6-4 16:54
568 0 0
P5017 [NOIP2018 普及组] 摆渡车
思路: 考虑动态规划。 定义 \(dp_i\) 表示若有一班车在第 \(i\) 个时间出发所有人等待的时间,则状态转移方程为: \[dp_i = dp_j + \operatorname{get}(j+1,i)(j \le i - m)\] 其中 \(\operatorname{get}(l,r)\) 表示等车时间在 \([l, ...
仲秀娟 2025-6-4 16:54
219 0 0

快速发帖

还可输入 80 个字符
您需要登录后才可以发帖 登录 | 立即注册

本版积分规则