- 博客(22)
- 收藏
- 关注
原创 Linux开发工具
1. vim自行查找资料, 自行配置插件. 配置文件都是在.vimrc文件中的所以vim .vimrc进入normal模式再i进入插入模式就可以配置自己的vim了 我的配置还没完,缺什么再配置什么。目前只配置了一点。 2. 除了vim, 还有哪些常用的编辑器?并能够横向对比编辑器之间的区别和优缺点. 首先先有一个概念IDE(集成开发...
2018-10-12 12:29:55 169
原创 如何使用命令安装gcc/g++, gdb, vim
在Linux环境下如何使用命令安装gcc/g++, gdb, vim (1)安装gcc 在root用户下yum install gcc 在安装完成后用which gcc查看是否安装成功; (2)安装g++ 在root用户下yum install gcc-c++ 在安装完成后用which g++查看是否安装成功; (3)安装gdb 在r
2017-12-17 14:42:21 277
原创 Linux权限解读
1.进入目录需要哪些权限 r–read的权限 w–write的权限 x–修改可执行权限 通过这一系列的操作可以看出只有拥有x权限才可以cd 到目录下面 2.在目录中执行增删查…(cd, touch, ls, rm, mv) 只有我们拥有x w 我们才可以切换到该目录下进行touch,当我们拥有x r 时我们才可以切换到该目录下进行ls
2017-11-12 22:54:21 216
原创 map和set增删查改
1.增添元素 (1)insert增加元素的四种形式 numCountMap.insert({numName,thisAddTime}); numCountMap.insert(make_pair(numName,thisAddTime)); numCountMap.insert(pairint,int>(numName,thisAddTime)); numCountMap.insert(m
2017-11-12 22:44:33 236
原创 模板的分离编译
首先,在C++中,为了一个项目的规范,我们通常把代码归为三类:声明文件、实现文件、测试文件。 比如,我要用C++实现一个链表,那么就会创建这3个文件: LinkList.h //链表的相关声明 LinkList.cpp //链表的实现代码 Test.cpp //链表测试代码 那么问题来了,普通链表这样写起来一点问题都没有! 如
2017-11-06 13:43:31 210
原创 Linux重要命令的使用
1.du 在Linux下du命令是查看使用空间的命令,和df功能类似,但是不同的是du命令是对文件和目录磁盘使用的空间进行查看。 格式:du [选项] [文件] 功能:查看每个文件和目录的磁盘使用空间。 选项 含义 zebra stripes are neat -a或-all 显示目录中个别文件的大小。
2017-11-05 11:43:21 285
原创 Vector和List
Vector和List的区别: 1.vector数据结构 vector和数组类似,拥有一段连续的内存空间,并且起始地址不变。 因此能高效的进行随机存取,时间复杂度为o(1); 但因为内存空间是连续的,所以在进行插入和删除操作时,会造成内存块的拷贝,时间复杂度为o(n)。 另外,当数组中内存空间不够时,会重新申请一块内存空间并进行内存拷贝。 2.list数据结构 list是由双向链表实
2017-11-05 11:35:18 257
原创 关于智能指针!
智能指针的发展史: 先从RAII说起: RAII(Resource Acquisition Is Initialization) 资源分配即初始化,定义一个类来封装资源的分配和释放,在构造函数完成资源 的分配和初始化,在析构函数完成资源的清理,可以保证资源的正确初始化和释 放。 auto_ptr: 实际上,为了正确地管理资源,人们进行了包括但不仅限于flag
2017-11-05 11:16:33 179
原创 多态&多态的对象模型
什么是多态? 多态性可以简单地概括为“一个接口,多种方法”,程序在运行时才决定调用的函数,它是面向对象编程领域的核心概念。多态(polymorphism),字面意思多种形态。C++多态性是通过虚函数来实现的,虚函数允许子类重新定义成员函数,而子类重新定义父类的做法称为覆盖(override),或者称为重写。 三个易混淆概念: 1.重载: (1)在同一个作用域下。 (2)函
2017-08-01 22:47:05 218
原创 解析函数重载
什么是函数重载? 函数重载是指在同一作用域内,可以有一组具有相同函数名,不同参数列表的函数,这组函数被称为重载函数。重载函数通常用来命名一组功能相似的函数,这样做减少了函数名的数量,避免了名字空间的污染,对于程序的可读性有很大的好处。 看下面的一个例子,来体会一下:实现一个打印函数,既可以打印int型、也可以打印字符串型。在C++中,我们可以这样做: #include
2017-07-27 11:15:54 368
原创 C++动态内存管理
一、malloc/free和new/delete的联系和区别。 一).malloc/free 1.函数原型及说明: void* malloc(long NumBytes):该函数分配了NumBytes个字节,并返回指向这块内存的指针。如果分配失败,则返回一个空指针(NULL)。 void free(void *FirstByte):该函数是将之前用malloc分配
2017-07-25 17:54:57 167
原创 C语言实现扫雷
头文件 #define _CRT_SECURE_NO_WARNINGS 1 #include #include #include #include #define rows 11 #define cols 11 #define Count 10 int menu();//菜单函数 void display(char show[rows][cols]);
2017-07-04 11:42:10 335
原创 C语言实现三子棋
头文件 #include #include #define ROW 3 #define LINE 3 void init_board(char arr[ROW][LINE]); void display_board(char arr[ROW][LINE]); void palyer_move(char arr[ROW][LINE]); void computer
2017-07-04 11:41:05 286
原创 一个数组中只有两个数字是出现一次,其他所有数字都出现了两次。
#include #include void find(int a[], int sz) { int i = 0; int num1 = 0; int num2 = 0; int num = 0; int flag = 0; for (i = 0; i < sz; i++) { num = num^a[i]; }
2017-07-04 11:33:44 189
原创 使用宏实现两个数中求较大值
#include #define MAX(X, Y) ((X)>(Y)?(X):(Y)) int main () { int i = 10; int j = 20; int m = 0; m=MAX(i, j); printf("%d",m); return 0; }
2017-07-04 11:32:29 898
原创 使用宏将一个数二进制中的奇数位和偶数为进行交换
#include #define CH(x) ((((x)&(0xAAAAAAAAA))>>1)+(((x)&(0x555555555))<<1)) int main() { int j = 0; int i = 0; int x = 0; printf("请输入一个数 :\n"); scanf("%d",&x); prin
2017-07-04 11:31:45 268
原创 实现一个函数,可以左旋字符串中的k个字符
#include #include #include void Lx(char *arr,int n) { int l = 0; int i = 0; int j = 0; char t = 0; assert(arr); l = strlen(arr); for (i=0;i<n;i++)
2017-07-04 11:30:37 189
原创 判断一个字符串是否为另外一个字符串旋转之后的字符串
#include #include #include void Chack(char *str1,char *str2) { int len1=strlen(str1); int len2=strlen(str2); assert(str1); assert(str2); strncat(str1,str1,len1);
2017-07-04 11:29:18 217
原创 huffman 树
#include #include #include #include #include #define MAX_NUM 100 #define inf 2000000000 using namespace std; typedef struct { unsigned int weight;//权值 unsigned int parent,lchild,rchild;//父节点,孩子结点的权
2016-12-20 14:54:06 186
原创 创建一个数组, 实现函数init()初始化数组、 实现empty()清空数组、 实现reverse()函数完成数组元素的逆置。
#include void init(int a[]) { int i; for(i=0;i<5;i++) { scanf_s("%d",&a[i]); } for(i=0;i<5;i++) { printf("%d ",a[i]); } printf("\n"); } void reverse(int a[]) { int j; for(j=4;j>=0;j--)
2016-12-14 14:28:43 335
原创 创建函数能够对整型数组进行二分查找。
#include int Find(int a[],int x,int sz) { int left = 0; int right = sz; while(left<=right) { int mid = (left+right)/2; if(a[mid]>x) {
2016-12-14 14:25:40 351
原创 新的开始----11-25
我现在是一名大二学生,学习软件工程专业,上了大二才发现大一都荒废了,真是没有好好学习,现在觉得应该还不迟,所以找各种途径开始学习专业,这就算是个开始吧。 我理想的我的能力能达到“出手成章”,写代码变成习惯,能下意识的写出程序代码,会读代码,写代码,编代码。 我现在基础很差,还得从基础的慢慢学起,还得扎扎实实地学,从学习到练习都认真对待,只想对自己说,加油! 我需要
2016-11-25 22:29:58 236
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人