自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

沐之博

人生嘛、成王败寇。

  • 博客(34)
  • 资源 (1)
  • 收藏
  • 关注

原创 See you again

See you again.

2023-11-06 16:21:07 45

转载 _stdcall详解

在C语言中,假设我们有这样的一个函数:intfunction(inta,intb)调用时只要用result=function(1,2)这样的方式就可以使用这个函数。但是,当高级语言被编译成计算机可以识别的机器码时,有一个问题就凸现出来:在CPU中,计算机没有办法知道一个函数调用需要多少个、什么样的参数,也没有硬件可以保存这些参数。也就是说,计算机不知道怎么给这个函数传递参数,传递参数的工作必须由函数调用者和函数本身来协调。为此,计算机提供了一种被称为栈的数据结构来支持参数传递。栈是一种...

2020-12-30 14:48:23 651

原创 5.git 分支

1.git brance “分支名” 创建分支,仅仅只是创建一个指针;2.git checkout "分支名" 切换分支, 只是head指向分支名3.git checkout master 切换主分支,分支增加的东西都会复原;4.gitlog--decorate--graph--all 查看所有的分支,已图形方式5.git merge "分支名" 合...

2019-03-02 20:53:33 145

原创 4.git的版本回退和比较

1.上一节已经说明了提交的命令,现在了解回退2.回退分多种情况, a>.文件已经提交到库了,需要回退到上一个版本,或(上上上个版本) 1.通过命令git reset HEAD~回退到上一个版本到暂存区(每多一个~,就往上加一个版本,也可以用~5,就是往上第5个版本(或者用~~~~~); 2.此时你可以通过git add. 重新添加;或者通过checko...

2019-03-02 20:52:50 241

原创 3.git的版本提交

1.通过上一节可以看到代码提交从工作区到暂存区是通过git add .;此时的状态显示;2.通过提示可知,可以通过git commit -m "说明"提交,或者通过git reset 回退(后面讲);3.如果git commit 后面没有加上任何标签 ,会进入类似Linux的VIM编辑器界面, a>.输入i进入编辑模式; b>.编辑提交说明内容,然后按Esc...

2019-03-02 20:51:55 213

原创 2.git的基本理解

1.git主要包括三个区: a>.实际文件区(就是我们的工作目录Working),我们增删修改的地方; b>.暂存区(Stage),即我们通过git add 添加上去的地方,不会直接到库中,容许我们自己比对的地方; c>.库区(Repository),最后通过git commit -m ""添加的地方;2.如下图,工作区和暂存区的提交是通过...

2019-03-02 20:48:41 132

原创 驾照考试之科目三(深圳东周版)

1.9.5号考完科目二,一把过,内心还是有点窃喜,所以急着报名科目三,教练让我们等20天左右;去一去热潮;----------第一次考试福永篇----------------2.10.22报名成功科目三,是在福永考场,参加考试前,在教练那学习了3节课,每节课一个小时,并在考试前一天去现场模拟了1圈2号道(因为地图上感觉2号道困难一些);3.考试当天,我们3个人过去,我抽到13号车,一号...

2019-01-09 11:46:28 3532 5

原创 驾照考试之科目二(深圳仙田版)

昨天(9.5)在深圳仙田科目二考场参加了考试;背景说明:我们有四个小伙伴一起学的车,所以科目二是一起考试,由于另外两个小伙伴有个人原因不能提前一天去考场模拟训练,所以我们就参加5号早上的模拟学,提前一天住到附近的茗兰酒店,坐车到新生路口,和考场距离1.5公里,步行过去20分钟。这是最近的酒店了;早上5点20起来赶往考场,因为我们有5个人,每个小时200块,所以我们练习三十分钟,跑的二号考道...

2019-01-09 11:45:21 10444 3

原创 无法定位程序输入点ucrtbase.terminate有感

背景:公司又一个很NB的客户,用本公司的软件又不想安装vc库,又要用来宾账户执行,刚收到这个消息,我是很气愤的……      软件是用VS2015开发。解决客户方法:一、静态编译:此方法可以满足客户的不想安装需求,但软件相对来说比较大一些,各种外部调用的dll和exe多达20个左右,而且部分dll还无源码,排除…二、将依赖的vc库加载进去:1.可以使用工具Depends

2017-12-19 16:52:44 6837 2

原创 Java和C++ Protect安全性

结论:Java的Protect安全性要比C++安全性低Java:继承类可以直接访问基类的保护成员,如果对类的实现进行修改,是可以直接访问基类的保护成员,这就影响到数据封装了;C++:不能对继承类的实现直接访问基类的保护成员;

2017-11-18 21:52:51 522

原创 程序异常自动生成DMP文件

随着软件的发展,有时候在客户机器上会遇到各种奇形怪状的问题,如果崩溃能够必现,倒还好调试一些,就怕隔三差五的来给你崩溃下;所以,需要对客户每次崩溃的情况有所了解,可以让程序自动生成异常的dmp;本人已经上传了一个MiniBug.dll,下载地址:http://download.csdn.net/detail/zhlstud/9866471可供直接调用, 调用代码

2017-06-10 11:05:37 4157

原创 NSIS之跳转页面

如果想跳过一些不需要的界面,可以使用SendMessage $HWNDPARENT 0x408 2 0如果想跳转到上一页就SendMessage $HWNDPARENT 0x408 -1 0如果是跳过下面几页就将n改成几SendMessage $HWNDPARENT 0x408 n 0

2017-06-01 22:41:39 1016

原创 字符串过滤

通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串过滤程序,若字符串中出现多个相同的字符,将非首次出现的字符过滤掉。 比如字符串“abacacde”过滤结果为“abcde”。  要求实现函数:  void stringFilter(const char *pInputStr, long lInputLen, char *pOutputStr);    【输入】

2017-05-09 17:57:25 861

原创 查找子串的个数

题目:输入一个字符串,判断有多少个子串。输入: a ds       dga      ada a  asdf输出:6思路:根据空格的数量来计算子串的数量,多个空格按一个计算//计算空格的数量int SpaceCnt(char *str){ bool bSpace = false; int iLen = s

2017-05-09 17:16:51 989

原创 简单的四则运算

题目:输入一个只包含个位数字的简单四则运算表达式字符串,计算该表达式的值注:3.1、表达式只含 +, -, *, / 四则运算符,不含括号3.2、表达式数值只包含个位整数(0-9),且不会出现0作为除数的情况3.3、要考虑加减乘除按通常四则运算规定的计算优先级3.4、除法用整数除法,即仅保留除法运算结果的整数部分。比如8/3=2。输入表达式保证无0作为除数情况发生

2017-05-09 16:29:27 1479

转载 夫妻相问题

题目本意:在中国,形容夫妻恩爱的词汇中,大家用的比较多的就是“夫妻相”。所谓“夫妻相”,就是两个人看上去比较般配,长相、身材等某些方面有一定的相似度。本题则另辟蹊径,从人的姓名维度,以字母重复个数来寻找最具“夫妻相”的人。题目中预先给定一组女士的姓名拼音。输入男士的姓名拼音(拼音中间可以有空格,字母全部小写),依预先给定姓名拼音的先后遍历所有姓名,输出字母重复数最多的女

2017-05-09 14:14:51 1009

原创 很有趣的亮灯数量问题

题目:假设有N盏灯,默认全部关着,第一个人路过的时候就按下全是1的倍数的灯,第二个路过就按全是2的倍数的灯,直到第N个人路过,按下全是N倍数的灯,问,最后还有几盏灯是亮着的?思路:一盏灯按奇数次是开着,按偶数次是关着,那每一盏灯都会按它当前序号的因数个数,在数学上,几乎每个数的因数个数都是2个,一种情况例外,那就是平方数,所以亮着的盏灯数量就是有平方数的数量;举例:假设有4个人:

2017-05-09 12:43:21 833

原创 最大公约数和最小公倍数

思路:先求出最大公约数,两两比较,递归求出最大约数,再通过两两之乘积除以最大公约数就是最小公倍数;代码://最大公约数int gysMax(int a, int b){ return a%b ? gysMax(b, a%b) : b;}//最小公倍数int gbsMin(int a, int b){ return a*b / gysMax(a, b); }

2017-05-09 11:14:11 373

原创 自动求出成绩系统

昨天面试一家公司,遇到的一个面试题;题目::随机输入n个同学的成绩,自动计算出及格线,条件:a.及格线是5的倍数;b.必须有70%的人及格;c.如果所有人的分数都大于60分,则及格线为60;d.面向对象解答思路:1.随机输入N个同学的成绩并放入到vector容器;2.对容器进行排序sort(v.begin,b.end,compare);3.判断最后一

2017-05-09 10:26:03 538

翻译 一道有趣的求符号字符的长度

int _tmain(int argc, _TCHAR* argv[]){signed char a[1001] = { 0 };int i;for (int i = 0; i {a[i] = -1 - i;}cout getchar();return 0;}最后的结果是255。。

2017-05-07 22:28:29 1597

原创 memcpy和memmove区别

1.memcpy是不会考虑内存重叠问题2.memmove会考虑处理内存重叠问题3.memcpy只是memmove的一个子集;memcpy函数原型:void* memcpy1(void* dst, void* src, int cnt){ assert(dst != nullptr && src != nullptr); while (cnt--) { *(

2017-05-07 11:26:51 455

原创 对深拷贝及浅拷贝的理解

1.两个拷贝之间区别主要是用于对象数据之间的拷贝!2.区别没指针:  深拷贝和浅拷贝没什么区别;有指针:  浅拷贝:即对象的默认拷贝函数,只是将指针的地址拷贝给对象,两个变量同时指向一个地址,这样在析构的时候必然会导致程序崩溃;class A{public: A() { m_Data = new char[100]

2017-05-07 11:10:05 566

原创 POD数据了解

Plain old data (普通旧的数据);POD 是Plain Old Data的簡寫,是指一些系統的int, char, float、指標、array之類的資料型別,這應該蠻好想像的,就是C++ compiler提供的內建型別,比較特別的是類別與結構,如果類別和結構帶有trivial constructor,也是POD的一種class vector3D{      

2017-05-07 11:06:42 608

原创 C++ 11 之学习总结

感慨时间过的好快,C++ 11出来都5年了,现在才开始学习,但为时也不晚;主要是网上及身边的朋友大肆宣扬C++ 11的某些优化,弄得别人心里痒痒的,所以就花了3天学习了点基本知识,相对于整个C++ 11的新增来说就是九牛一毛;先上一张C++ 11的图:1.推导关键词 auto & decltype;详解:http://blog.csdn.net/zh

2017-05-07 10:57:24 279

原创 C++ 11 之初始化

1.4中不同初始化的形式    a.string s("zhl")、int i(3);    //括号初始化    b.string s="zhl"、int i= 3;      //等号初始化     c.int arr[4] = {1,2,3,4}、struct tm today ={0};    //POD数据用大括号     d.struct s { int x; s():

2017-05-07 10:47:32 475

原创 C++ 11新增了两个推导关键词,auto & decltype

1.区别 auto:用于推导变量类型; decltype: 用于推导表达式或者函数返回值2.直接上代码int main(){ conststd::vector v(1); autoa = v[0]; // a 的类型是 int decltype(v[0]) b = 1; // b 的类型是 const int&, 因为函数的返回类型是

2017-05-07 10:44:13 255

原创 C++ 11 之Lambda

1.Lambda表达式来源于函数式编程,说白就了就是在使用的地方定义函数,有的语言叫“闭包”,如果 lambda 函数没有传回值(例如 void ),其回返类型可被完全忽略。 定义在与 lambda 函数相同作用域的变量参考也可以被使用。这种的变量集合一般被称作 closure(闭包);

2017-05-07 10:35:33 171

原创 看到一个理解进程和线程的故事

假如你有一家工厂(工厂就是电脑CPU),工厂里面有多个车间(车间就是进程);由于工厂接单太少,只要运行一个车间(单进程执行任务);就能完成任务,车间里面有N个工人(工人就是线程)在工作 ;每个人都在做钢化膜,做好之后都要到洗手间水龙头去冲洗一下,洗手间就是整个车间的共享内存空间 ;但水龙头只有一个,所以在一个人工人在冲洗的时候,另一个工人是不允许冲洗的,这代表一个线程使用某些共享内

2017-05-07 10:33:13 455

原创 虚析构函数的用处

问:虚析构函数的作用是什么?答:用基类指针删除派生类的对象时,让派生类的析构函数可以被调用;答案涉及到几个重要信息:第一:基类指针,也就是说声明的指针必须是基类或者是还有派生类的派生类,或者说一定不是最底层派生类;第二:派生类的对象,生成的对象一定要是派生类的对象,如果new的对象本身就是声明的类,那也没必要用虚析构,浪费空间;第三:派生类析构函数,只要满足前面两个条件信息,基

2017-04-22 23:15:14 474

原创 斐波那契数列

如果直接问你写一个斐波那契数列,估计大部分人会一脸懵逼,但如果让你写一串数列,满足条件0,1,1,2,3,5,8,13....估计就觉得很简单了... //斐波那契数列0,1,1,2,3,5,8 int rows; scanf("%d", &rows); int iFir = 0; int iSec = 1; int iTot = 0; int iAll = 0; pri

2017-04-22 12:38:52 258

原创 金字塔实现

金字塔算法一直是面试常见的基础题目;如何实现呢? //半边金塔 for (int i = 1; i <= rows;i++) { for (int j = 1; j<=i;j++) { printf("* "); } printf("\n"); }

2017-04-22 10:38:53 759

原创 对结构体的sizeof解答

sizeof是一个关键字,用来计算类型的大小,如int占用4个字节等....主要有两个注意的方面:一:字节对齐从结构体的第一个变量开始讲究对齐,以字节为单位;二:字节对齐要满足3个准则:a.结构体的第一个变量能够被最宽的基本类型成员的大小所整除;b.结构体每个成员相对于结构体首地址的偏移量都是当前成员大小的整数倍;不够在后面填充;c.结构体的总大小一定要是最宽基本类型的

2017-04-21 15:33:14 503

原创 strcpy函数的实现

最近面试到一些基本的问题这里做个基本的测试,还真发现了小问题 面试问题是:不适用库函数实现strcpy(char* dst,char* src); char * str = "abdda1234123"; char * str2; int i = 0; i = strlen(str); str2 = new char[i + 1]; char *tmp = str2; //st

2017-04-21 14:17:27 219

原创 Windows上git的搭建

一直习惯用SVN,但SVN但部分都部署在局域网,用起来不太方便,所以开始学习使用git;一、下载git for windows ,    下载地址:https://git-scm.com/download/win    源地址:git clone https://github.com/git/git二、在本地创建版本库:选择路径,使用git init;三、绑

2016-08-03 18:25:23 268

dmp自动生成文件

程序异常时候,自动生成dmp文件,调用方式详见博客说明;

2017-06-10

空空如也

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

TA关注的人

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