C/C++
文章平均质量分 56
ivebeenready
这个作者很懒,什么都没留下…
展开
-
数组的引用于引用数组
http://blog.csdn.net/desilting/article/details/7983530原创 2015-08-31 21:42:06 · 458 阅读 · 0 评论 -
struct字节对齐
http://blog.chinaunix.net/uid-14802518-id-2784907.html现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定类型变量的时候经常在特 定的内存地址访问,这就需要各种类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。 对齐的作用和原转载 2015-08-31 10:53:49 · 422 阅读 · 0 评论 -
hash_map和map
为什么需要hash_map 用过map吧?map提供一个很常用的功能,那就是提供key-value的存储和查找功能。例如,我要记录一个人名和相应的存储,而且随时增加,要快速查找和修改: 岳不群-华山派掌门人,人称君子剑 张三丰-武当掌门人,太极拳创始人 东方不败-第一高手,葵花宝典 ... 这些信息如果保存下来并不复杂,但是找起来比较麻烦。例如我要找"张三丰"的转载 2015-09-10 18:52:16 · 307 阅读 · 0 评论 -
leetcode GrayCode 递归
Binary Code 转换为Gray Code。如: Binary Code :1011 要转换成Gray Code 1011 = 1(照写第一位), 1(第一位与第二位异或 1^0 = 1), 1(第二位异或第三位, 0^1=1), 0 (1^1 =0) = 1110 其实就等于 (1011 >> 1) ^ 1011 = 1110void gr原创 2015-09-07 09:32:20 · 368 阅读 · 0 评论 -
模板编译的小错误
我在类中声明了析构函数,但是忘了定义这个函数。如果这个模板和main函数在同一个源文件中链接出现这个问题:Error 1 error LNK2019: unresolved external symbol "public: __thiscall LList,class std::allocator > >::~LList,class std::allocator > >(void)"原创 2015-09-07 19:10:22 · 465 阅读 · 0 评论 -
自定义结构作为map的key,比较函数写法
点击打开链接set、queue等stl也可以用类似方式转载 2015-09-20 21:23:59 · 446 阅读 · 0 评论 -
单链表为什么用指向指针的指针
int a = 1, b =2;void change(int *x){ x = &b;}void _change(int **x){ *x = &b;}void main(){ int *p = &a; change(p); cout << *p << endl; _change(&p); cout << *p << endl; system("pause原创 2016-01-21 01:22:04 · 3500 阅读 · 0 评论 -
ASCII、Unicode、GBK和UTF-8字符编码
点击打开链接很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物。他们看到8个开关状态是好的,于是他们把这称为”字节“。再后来,他们又做了一些可以处理这些字节的机器,机器开动了,可以用字节来组合出很多状态,状态开始变来变去。他们看到这样是好的,于是它们就这机器称为”计算机“。开始计算机只在美国用。八位的字节一共可以组合出256(2的8次方转载 2016-01-22 10:36:35 · 493 阅读 · 0 评论 -
二级指针和二维数组详解
一个函数形如:void f(float **p){/* 想要在函数体中按二维数组的方式访问*/ p[1][1] = 0;//c++用vc编译ok,运行出错(非法访问)}float **p; //其实这里的p并不是一个二位数组的指针,只不过是一个指向指针的指针像你这样访问肯定是会出问题的。例如:float a[2][2]={0,1转载 2016-02-29 17:10:45 · 653 阅读 · 0 评论