自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 浅谈函数的调用,栈帧的创建和销毁

今天用一段简单的程序详细的看看函数在调用过程中的栈帧情况。(栈帧表示程序的函数调用记录)      代码如下:int Add(int a, int b){ int ret = 0; ret = a + b; return ret;}int main(){ int a = 10; int b = 20; int ret = 0; ret = Add(a,b);

2017-10-28 17:12:06 577

原创 详解malloc/free和new/delete

今天就浅谈一下malloc/free和new/delete的区别,剖析一下它们的工作原理以及使用宏来模拟实现new/delete的功能。区别:①malloc/free是c/c++的标准库函数,而new/delete则是c++中的运算符;②malloc/free只是动态分配内存空间/释放空间。而new/delete除了这些以外还会调用类的构造函数和析构函数进行初始化和清理;③mall

2017-10-22 21:43:04 686

原创 浅谈类的六个默认成员函数和隐含的this指针

今天简单的浅谈一下关于类和对象的一些基础认识!     类的六个默认成员函数:构造函数、拷贝构造、析构函数、赋值操作符重载、取地址操作符重载和const修饰的取地址操作符重载。    构造函数:是一个特殊的成员函数,名字与类名相同,创建类类型对象时,由编译器自动调用,在对象的生命周期内只且只调用一次,以保证每个数据成员都有一个合适的初始值。

2017-10-21 18:17:14 958

原创 数组指针、 指针数组、函数指针、函数指针数组和指向函数指针数组的指针

本篇主要介绍一下数组指针、指针数组、函数指针数组和指向函数指针数组的指针。希望能和大家一起学习,互相交流。(所讲内容的操作均在32位系统下进行)指针数组:形如:int *p1[5];(p1为数组名)首先我们要知道“[ ]”的优先级比“ * ”高,现在,我们不难理解,p1先与“[ ]”结合构成一个数组,然后在与“ * ”结合,说明数组的元素是指针类型,最后与“ int ”结合,说明指针指向的

2017-10-13 21:28:30 1155 1

原创 C语言实现简易版扫雷游戏

最近用C语言实现了一个简易版的扫雷游戏,感觉很有意思! 效果图:游戏界面效果图代码如下#include<stdio.h>#include<stdlib.h>#include<time.h>#include<string.h>#define ROW 9#define COL 9#define ROWS (ROW+2)#define COLS (COL+2)#define MAX 10

2017-10-12 23:12:18 2818 1

原创 数组的初始化和简单使用

关于数组,有好多值得我们注意的地方,今天就来和大家浅谈一下数组的故事。1.数组的初始化数组的初始化有这样几个点需要我们注意: ①如果我们只是定义了一个数组但并未对其初始化时,数组中的元素全是随机值; ②当我们初始化数组的元素(注意是从第一个元素开始初始化)小于数组的大小时,其余未初始化的数组元素均被编译器初始化为0;例如:int arr[5]={1,2}; ③当我们有确定的元素个数时,在定义数

2017-10-10 23:05:06 4775

原创 辗转相除法求两个非负数的最大公约数问题

求两个非负数的最大公约数有多种方法,常见的就是辗转相除法。①常规方法:int main() { size_t x, y, tmp;printf("请输入两个数:");scanf("%d %d",&x,&y);//实现辗转相除 while (x%y) { tmp = x%y; x = y; y = tm

2017-10-10 17:19:24 2221

原创 链表面试题(二)

今天继续为大家带来几道常见的链表面试题,如有问题,欢迎大家指正。1.判断链是否带环 我们可以定义两个快慢指针,快指针走两步,慢指针走一步。如果这个链表带环,则这两个指针会相遇。 这里注意的是,为什么快指针要走两步,如果三步呢?其实这也是个数学问题,快指针走两步能够保证 每个节点都可以遍历;如果走三步,则两个节点会错过或者不能遍历每个节点。如图: int IsCircle(ListNode

2017-10-09 20:00:12 443

原创 几个常见的链表面试题<一>

1.单链表实现约瑟夫环 ListNode* JosephusProblem(ListNode* hus,size_t k) { ListNode* man,*next; assert(hus); man = hus;while (man->next != man)//直到剩下一个人终止循环{ size_t count = k; //走了k步

2017-10-05 20:01:24 578

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除