自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

wonder

Linux C/C++ Lua 服务器开发

  • 博客(26)
  • 资源 (11)
  • 收藏
  • 关注

原创 Effective C++专题总结

Effective C++

2016-09-28 00:30:45 14521

原创 C++volatile关键字

遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的稳定访问。声明时语法:int volatile a; 或者volatile int a;当要求使用 volatile 声明的变量的值的时候,系统总是重新从它所在的内存读取数据,即使它前面的指令刚刚从该处读取过数据。而且读取的数据立刻被保存。一般说来,volatile 用在如下的几个地方: 1) 中断服务程序中

2016-09-27 20:45:44 487

原创 二分法查找C++实现

#include <iostream>#include <vector>using namespace std;int binary_seacher(vector<int> &v, int target){ if (v.empty()) return -1; int index1 = 0, index2 = v.size() - 1, mid = 0; wh

2016-09-27 15:28:49 17725

转载 extern "c"用法解析

引言 C++保留了一部分过程式语言的特点,因而它可以定义不属于任何类的全局变量和函数。但是,C++毕竟是一种面向对象的程序设计语言,为了支持函数的重载,C++对全局函数的处理方式与C有明显的不同。 extern “C”的主要作用就是为了能够正确实现C++代码调用其他C语言代码。加上extern”C”后,会指示编译器这部分代码按C语言的进行编译,而不是C++的。由于C++支持函数重载,因此编译器编

2016-09-27 12:09:48 14216

转载 如何计算时间复杂度

一、概念时间复杂度是总运算次数表达式中受n的变化影响最大的那一项(不含系数)比如:一般总运算次数表达式类似于这样:a*2^n+b*n^3+c*n^2+d*n*lg(n)+e*n+fa ! =0时,时间复杂度就是O(2^n);a=0,bO(n^3);a,b=0,cO(n^2)依此类推eg:(1) for(i=1;i<=n;i++) //循环了n*n次,当然是O(n^2)

2016-09-26 16:43:49 14507 1

原创 C语言字符串函数总结

/* 拼接多个字符串 * argc: the number of strings */char * strcat2(int argc, const char *str1, const char *str2, ...) { int tmp = 0; char *dest = NULL; char *cur = NULL; va_list va_ptr;

2016-09-26 10:37:24 14362

原创 电话号码身份

C++代码实现:#include <iostream>#include <string>#include <algorithm>#include <vector>#include <map>using namespace std;int main(){ map<string, string> mp; map<string, string>::iterator it;

2016-09-24 02:28:06 14533

原创 剑指offer----整数中1出现的次数(从1到n整数中1出现的次数)

设N = abcde ,其中abcde分别为十进制中各位上的数字。 如果要计算百位上1出现的次数,它要受到3方面的影响:百位上的数字,百位以下(低位)的数字,百位以上(高位)的数字。 ①如果百位上数字为0,百位上可能出现1的次数由更高位决定。比如:12013,则可以知道百位出现1的情况可能是:100~199,1100~1199,2100~2199,,…,11100~11199,一共1200个。可

2016-09-21 22:14:22 6543

原创 为什么static数据成员一定要在类外初始化?

1、为什么静态成员不能在类内初始化? 在C++中,类的静态成员(static member)必须在类内声明,在类外初始化,像下面这样。class A { private: static int count ; // 类内声明 };int A::count = 0 ; // 类外初始化,不必再加static关键字为什么?因为静态成员属于整个类,而不属于某个对象,如果在类内初始化,会导

2016-09-21 00:30:50 24946 2

转载 面向对象的基本原则

一、单一职责原则: 全称:“Single-Responsibility Principle” 说明:就一个类而言,应该只专注于做一件事和仅有一个引起它变化的原因。所谓职责,我们可以理解他为功能,就是设计的这个类功能应该只有一个,而不是两个或更多。也可以理解为引用变化的原因,当你发现有两个变化会要求我们修改这个类,那么你就要考虑撤分这个类了。因为职责是变化的一个轴线,当需求变化时,该变化会反映类的

2016-09-20 17:28:03 14145

转载 C++用模板实现栈

#ifndef _CStack #define _CStack #include<iostream.h> template<class T>class CStack{ // LIFO 对象 public: CStack(int MaxStackSize = 10); ~CStack() { delete[] stack; } bool IsEmpty

2016-09-18 10:30:44 14393

转载 Linux下rar 命令压缩和解压详解

例1:添加文件或目录到压缩档案中,使用a命令。例如把文件files1添加到abc.rar中,使用a或m命令,a命令把file1文件添加到abc.rar档案中保持原有的file1文件不变,m命令移动file1文件到file1.rar档案中(压缩完成后会删除原有的file1文件,注意:m命令只针对文件进行操作) $rar a abc.rar file1说明:如果此时abc.rar档案不存在,会自行创建

2016-09-11 19:29:45 15420

原创 程序打印日志

为什么需要日志工具: 1方便调试 2方便代码维护日志输出信息设计: 日志信息等级 + 日期时间 + 调试信息日志输出等级设计(5个等级) 0调试[debug]:仅仅用于调试 1普通信息[info]:可以让使用者了解的一些信息 2警告信息[warn]:意味着程序中出现了错误,但是并不严重 4错误信息[error]:意味着程序中发生了严重错误,根据实际情况可选择使程序继续运行或使程序终止

2016-09-11 19:24:27 14637

原创 C++中哪些运算符不可重载

几乎所有的运算符都可用作重载。具体包含: 算术运算符:+,-,*,/,%,++,–; 位操作运算符:&,|,~,^,<<,>> 逻辑运算符:!,&&,||; 比较运算符:<,>,>=,<=,==,!=; 赋值运算符:=,+=,-=,*=,/=,%=,&=,|=,^=,<<=,>>=; 其他运算符:[],(),->,,(逗号运算符),new,

2016-09-07 09:40:30 36503 2

转载 static_cast, dynamic_cast, reinterpret_cast, const_cast区别比较

原:http://www.cnblogs.com/jerry19880126/archive/2012/08/14/2638192.html隐式转换(implicit conversion)short a=2000;int b;b=a;short是两字节,int是四字节,由short型转成int型是宽化转换(bit位数增多),编译器没有warning,如下图

2016-09-07 00:52:04 14110

原创 http协议状态码

100(继续)请求者应当继续提出请求。服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。101(切换协议)请求者已要求服务器切换协议,服务器已确认并准备切换。2xx(成功) 表示成功处理了请求的状态码。200(成功)服务器已成功处理了请求。通常,这表示服务器提供了请求的网页。如果是对您的 robots.txt 文件显示此状态码,则表示 Googlebot 已成功检索到该文件。201(已创

2016-09-06 13:10:52 14371

转载 在mysql中,以下哪种方式可以开启一个事务?

在mysql中,以下哪种方式可以开启一个事务? A. START TRANSACTION B. START C. BEGIN D. BEIGN TRANSACTION 正确答案: A C BEGIN或START TRANSACTION;显示地开启一个事务;COMMIT;也可以使用COMMIT WORK,不过二者是等价的。COMMIT会提交事务,并使已对数据库进行的所有修改称为永久性的;R

2016-09-06 12:54:58 15735

原创 哈夫曼树构造和编码方式

哈夫曼树构造方法: 编码方式如下,左0右1:

2016-09-06 12:08:30 16448

原创 mysql的between的边界问题

mysql的sql语句中可以使用between来限定一个数据的范围,例如:select * from user where userId between 5 and 7; 查询userId为5、6,7的user,userId范围是包含边界值的,也等同如下查询:select * from user where userId >= 5 and userId <= 7; 很多地方都提到between是

2016-09-06 11:34:19 111053 2

原创 中缀表达式转换成前缀表达式和后缀表达式

35,15,+,80,70,-,*,20,/ //后缀表达方式(((35+15)*(80-70))/20)=25 //中缀表达方式 /,*,+,35,15,-,80,70, 20 //前缀表达方式 人的思维方式很容易固定!正如习惯了10进制。就对2,3,4,8,16 等进制不知所措一样!人们习惯的运算方式是中缀表

2016-09-06 11:02:35 17421 4

转载 map 和 hash_map 的使用方法

STL map常用操作简介1。目录map简介map的功能使用map在map中插入元素查找并获取map中的元素从map中删除元素2。map简介map是一类关联式容器。它的特点是增加和删除节点对迭代器的影响很小,除了那个操作节点,对其他的节点都没有什么影响。对于迭代器来说,可以修改实值,而不能修改key。3。map的功能

2016-09-05 17:51:49 15606

原创 剑指offer----第一个只出现一次的字符

在一个字符串(1<=字符串长度<=10000,全部由大小写字母组成)中找到第一个只出现一次的字符,并返回它的位置。 int FirstNotRepeatingChar(string str) { if(str.empty()) return -1; map<char, int> mp; for(int i =

2016-09-05 17:46:59 14127

原创 求数组中数量超过一半的数

//思路:数量超过一半的数,比其他所有数的和都多int MoreThanHalfNum_Solution2(int* numbers, int length){ if(CheckInvalidArray(numbers, length))//参数规范检查 return 0; int result = numbers[0]; int times = 1;

2016-09-04 16:22:45 29041

原创 快速排序算法C++实现

快速排序采用的思想是分治思想。快速排序是找出一个元素(理论上可以随便找一个)作为基准(pivot),然后对数组进行分区操作,使基准左边元素的值都不大于基准值,基准右边的元素值 都不小于基准值,如此作为基准的元素调整到排序后的正确位置。递归快速排序,将其他n-1个元素也调整到排序后的正确位置。最后每个元素都是在排序后的正 确位置,排序完成。所以快速排序算法的核心算法是分区操作,即如何调整基准的位置以及

2016-09-04 13:44:41 14377 2

原创 字符串全排列

一、字符串的排列 用C++写一个函数, 如 vector Permutation(string str),打印出 str 的全排列,如 abc 的全排列: abc, acb, bca, dac, cab, cba 二、全排列的递归实现 为方便起见,用123来示例下。123的全排列有123、132、213、231、312、321这六种。首先考虑213和321这二个数是如何得出的。显然这二个都是1

2016-09-03 15:00:47 14419

转载 一步一图一代码,一定要让你真正彻底明白红黑树

原文:http://blog.csdn.net/chenhuajie123/article/details/11951777

2016-09-01 17:23:10 14495

vs2013源码编译的libcurl7.49.1动态库

vs2013源码编译的libcurl7.49.1动态库,包括debug和release版的dll和lib

2016-07-23

php mysql apache数据库课程设计博客留言系统

php mysql apache数据库课程设计 博客留言系统,这是源代码,直接可用

2016-05-13

C++图书管理系统课程设计

C++图书管理系统课程设计,包括程序源码和报告,程序绝对可用,报告详细!

2015-07-04

C_C++编程_100个经典算法

C语言和C++很经典的算法

2014-12-11

把SD卡修改成nand flash+Fatfs+USB

教你如何把SD卡和Fatfs修改成nand flash和Fatfs

2014-12-11

关于STM32的IAP总结

关于STM32的IAP总结

2014-12-04

单片机控制数码管、点阵、矩阵键盘联合扫描

单片机控制数码管、点阵、矩阵键盘联合扫扫描,按下矩阵键盘上的键,数字显示在数码管和点阵上。

2014-08-17

空空如也

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

TA关注的人

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