![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
文章平均质量分 72
没头发的米糊
风浪未平息,我宣告奔跑的意义。
合肥工业大学2020级本科软件工程大四在读,已推免至中国科学技术大学信息学院,从事计算机视觉相关的课题研究。
主要技术栈:Java、Node.js、Python、C/C++、Rust、Kotlin
展开
-
记一个C系语言中数值类型变量隐式转换的小坑
今日在刷LeetCode时偶遇一个小坑,也是由于很久以来经常写太高级的语言被惯坏了导致的,回头写C的时候就经常踩坑。这篇短文中只探讨混用数值类型导致的坑,借用标准里的话来说,就是当你只有一个数值类型T1,但是当前表达式需要数值类型为T2的值,如果这时候T1自动转换为了T2那么这就是隐式类型转换,如:int a = 0;long b = a + 1; // int 转换为 long if (a == b) { // 默认的operator==需要a的类型和b相同,因此也发生转换原创 2022-03-20 21:43:40 · 266 阅读 · 0 评论 -
解题报告 中位数
题目来源洛谷P1168 中位数 - 洛谷题目描述给出一个长度为N的非负整数序列A[i],对于所有1 ≤ k ≤ (N + 1) / 2,输出A[1], A[3], …, A[2k - 1]的中位数。即前1,3,5,……个数的中位数。输入输出格式输入格式:输入文件median.in的第1行为一个正整数N,表示了序列长度。第2行包含N个非负整数A[i] (A[i] ≤ 10^9)。输出格式:输出文件median.out包含(N + 1) / 2行,第i行为A[1], A[3原创 2021-09-24 17:11:58 · 281 阅读 · 0 评论 -
解题报告 合并果子
题目来源洛谷P1090 [NOIP2004 提高组] 合并果子 / [USACO06NOV] Fence Repair G - 洛谷题目描述在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过n-1次合并之后,就只剩下一堆了。多多在合并果子时总共消耗的体力等于每次合并所耗体力之和。因为还要花大力气把这些果子搬回家,所以多多在合并果原创 2021-09-24 17:08:53 · 158 阅读 · 0 评论 -
AOV网上的拓扑排序|拓扑序列、所有拓扑序列的求解
在本篇博客中原创 2021-06-23 22:25:56 · 5155 阅读 · 0 评论 -
基于哈夫曼树的任意文件解压缩实现
哈夫曼编码是一种基于二叉树生成的不等长编码,通过赋予高频次字符更短的编码来减小文件体积。本例中,将详细地讲解如何使用C++语言完成哈夫曼编码的压缩与解压,共包括以下几个部分:一、...原创 2021-06-02 15:39:33 · 1963 阅读 · 8 评论 -
如何解读C/C++中的那些复杂声明
这篇文章要探讨的是关于C/C++中复杂声明的解读。涉及到以下四个板块:1.解读复杂数据类型的基本技巧2.const与*的那些爱恨情仇3.函数与函数指针的那些事4.挑战几个复杂的函数声明文章内容属于C语言基础篇,适合被C语言的声明折磨到混乱的小伙伴阅读。原创 2021-02-23 14:50:01 · 304 阅读 · 0 评论 -
C++在成员函数中调用虚函数的例子
#include <iostream>using namespace std;class A{public: virtual void f() { cout<<"Afun"<<endl; }}; /* class A 虚函数表 A::f(); */class B:public A{public: void g() { /*this->*/f(); }};/* class B 虚函数表 A::f(); B.原创 2020-12-22 14:53:26 · 330 阅读 · 0 评论 -
C++中类的继承和类的组合的区别
首先先看一组概念:类的组合:一个类内嵌入其他类的对象作为数据成员,称为类的组合。类的继承:在已有类的基础上创建新的类。新类可以从一个或多个已有类中继承成员函数或数据成员,而且新类还可以重新定义或添加新的数据和函数。从以上的概念区别中可以看出,类的继承范围更广,它体现了多个类之间的关系。类与类之间的关系可以分为以下两种:1.从属关系。如果一个派生类是基类的某种特殊个体,则称两种类拥有从属关系,例如:学生是人,老师也是人,就可以用人的基类派生出学生、老师等派生类。2.包含关系。如果一个派生类中包含原创 2020-12-04 19:35:42 · 1388 阅读 · 1 评论 -
C语言中局部静态变量的特点
C语言存在以下三种作用域:全局变量文件内部的静态变量局部变量思维导图如下:全局变量、静态变量(包括上图中的“文件内部的静态变量”和“局部静态变量”)都具有静态存储期,变量的寿命周期从程序运行时即开始,到程序关闭时结束,其一直存在于内存的同一个地址上。也就是说,可以将局部静态变量理解为一种限定了作用范围的全局变量。其声明语句的位置与其被创建的位置无关,仅与其作用范围有关。相关概念补充:1.局部自动变量的存储期:局部自动变量的存储期被称为“自动存储期”,在程序进入它所在的语句块时被分配以内原创 2020-12-04 19:28:49 · 1011 阅读 · 0 评论