专项之C/C++
KetchupZ
退役acmer一名,CCPC银+ICPC铜(欢迎大家访问我的Github地址:https://github.com/LieLieLiekey)
展开
-
Huffman编码压缩二进制文件2(四个字节为一种字符)
编码过程与与上一节相似不同的是初始文件需要处理一下转化成处理文件#ifndef HEAD1_H_INCLUDED#define HEAD1_H_INCLUDED#include<stdio.h>#include<iostream>#include<stdlib.h>#include<string.h>#incl...原创 2018-09-30 14:14:12 · 2122 阅读 · 1 评论 -
c语言对象(函数,类,变量)的声明与定义
最近在看一本《c缺陷与陷阱》,意识到在大型程序时对象的声明与定义的重要性普通变量的定义与声明每个外部对象都必须在程序的某个地方进行定义。因此如果一个程序中包含了语句extern int a;//声明变量a那么,这个程序就必须在别处的某个地方包括语句 int a;//代表定义外部int型变量a或者int a=10;//定义变量a并初始化这两个语句既可以在同...原创 2018-07-17 22:28:32 · 5023 阅读 · 0 评论 -
关于C++迭代器的一些讨论(迭代器互相转化,效率,erase操作的影响 )。
关于c++迭代器的一些讨论。具体结论已经经过实验。c++STL库封装了一些非常常用的数据结构,但是想要熟悉掌握这些就不能不熟悉迭代器。主要说三个问题以及结论正向迭代器与反向迭代器的相互转化以及转化的效率问题: 转化是O(1)还是O(log)的不太清楚。.删除迭代器指向的元素后,it++ 还有效吗?删除迭代器指向的元素后,it会自动移动到下一个位置吗?正向迭代器和反向迭代器同样能够 ...原创 2019-04-17 21:22:32 · 715 阅读 · 0 评论 -
c++二进制读取类的信息时出现访问异常:0xC0000005读取位置0x00491F10时发生访问冲突
最近再做一个系统时,写了一个基类4个派生类,基类中有虚函数,每次修改之后就将二级制信息存储进*.dat文件。但是在再起启动程序时就出现这样的访问冲突问题,然后就一直困扰了3天,搜百度,博客,知乎等。最后还是在老师的提醒下发现问题出现在哪里。 每个类每多一个虚函数,其内存大小就多4个字节用来存放改函数对应的地址,所以在用二进制存取的过程中也将虚函数的地址存入*....原创 2018-06-12 20:02:03 · 840 阅读 · 0 评论 -
括号配对-栈的运用
题目:第一行输入一个数N(0<N<=100),表示有N组测试数据。后面的N行输入多组输入数据,每组输入数据都是一个字符串S(S的长度小于10000,且S不是空串),测试数据组数少于5组。数据保证S中只含有"[","]","(",")"四种字符解决这道题,首先要知道括号配对满足的条件是什么。1.左括号与右括号个数相等2.左右括号配对次序正确解决这道题要用...原创 2018-01-05 13:33:40 · 482 阅读 · 2 评论 -
gets()函数与scanf()函数对读取字符串的区别之处。
在吸收用键盘输入的数据时gets()与scanf()函数都有读取字符串的功能。但是他们吸收字符串除了gets()能吸收空格而scanf()不能吸收空格的区别之外。他们还是有很大的区别的。若能掌握这些细节,那么用这些函数时就能更加灵活咱们先看课本中对gets()和scanf()吸收字符串的介绍。gets()函数用法:gets()函数可以接受输入包含空格的完整句子,知道遇到换行符结束。 ...原创 2018-01-05 11:56:17 · 654 阅读 · 0 评论 -
VS2017打包一个控制台程序为安装软件(已解决)
Youtube网址https://www.youtube.com/watch?v=z0v6hmumCFU如下写了一个程序点击解决方案->添加->新建项目(注意要在需要打包的程序的解决方案里面新建该项目)选择其他项目类型-> Visual Studio installer 里面 Setup Project如果没有这一项请点此网址https://w...原创 2018-10-11 08:50:44 · 8975 阅读 · 3 评论 -
C语言课程设计作业--图书馆系统
C语言课程设计作业–图书馆系统这系统功能挺强大的,管理员密码:666666#include&amp;lt;stdio.h&amp;gt;#include&amp;lt;stdlib.h&amp;gt;#include&amp;lt;math.h&amp;gt;#include&amp;lt;string.h&amp;gt;#include&amp;lt;原创 2019-01-14 17:50:49 · 1996 阅读 · 1 评论 -
c重定向函数
函数名:freopen函数,以指定模式重新指定到另一个文件。模式用于指定新文件的访问方式。头文件:stdio.hC89函数声明:FILE *freopen( const char *filename, const char *mode, FILE *stream );C99函数声明:FILE *freopen(const char * restrict filename, const...原创 2018-10-24 20:59:15 · 1437 阅读 · 0 评论 -
c++调用类成员和属性的几种方法
c++类关于类静态成员和方法和类的普通成员和方法的关系以及区别下面把静态属性(方法)称为类的属性(方法) ,普通属性(方法)称为对象的属性(方法)调用类成员和属性的几种方法/*调用类成员和属性的几种方法: 类名::属性或方法名 对象.属性或对象名*/#include&lt;cstdio&gt;#include&lt;iostream&gt;using namesp...原创 2019-01-31 23:35:46 · 6167 阅读 · 1 评论 -
Hufman编码实现运用1 (原理不描述)
思路:编码所需头文件:#ifndef HEAD1_H_INCLUDED#define HEAD1_H_INCLUDED#include<stdio.h>#include<iostream>#include<stdlib.h>#include<string.h>#include<map>#inc...原创 2018-09-28 09:12:21 · 462 阅读 · 0 评论 -
深入理解函数指针和函数数组
深入理解函数指针和函数数组理解函数指针首先理解它的类型,首先函数指针是个指针,他指向一个函数。其次与普通变量指针相同重要的一点是函数指针的类型,如果两个函数的参数个数、参数表、返回值类型都相同,则这两个函数是同一个类型。换句话说同一类型的函数指针可以指向这两个函数我们先看一个例子:#include<iostream>using namespace std;typedef in...原创 2019-06-06 16:54:36 · 821 阅读 · 0 评论