摘要: # C中宏展开问题简单记录一下碰到的问题。```c#define STR(x) #x```我们知道使用上面的宏可以将x转换为字符串"x"。但是如果这样用:```c#define NUM 3#define STR(x) #xSTR(NUM) --> 实际输出为:"NUM".```这是为啥呢?C99标准... 阅读全文
posted @ 2014-12-09 16:48 野风鼓瑟震山岗 阅读(207) 评论(0) 推荐(0) 编辑
摘要: # C语言中的命名空间命名空间是为了解决 “在相同作用域内如何区分 相同的标识符”。 说明:①只有在相同作用域的情况下才能使用到命名空间去区分标识符,在嵌套的作用域、不同的作用域区分标识符都用不到命名空间的概念。 ②在相同的作用域内,如果命名空间不同,标识符可以使用相同的名称。否则,即如果命名空间不... 阅读全文
posted @ 2014-12-09 14:36 野风鼓瑟震山岗 阅读(647) 评论(0) 推荐(0) 编辑
摘要: #c语言中赋值语句的结果最近在看《C语言接口与实现》,在第一章就发现一个以前很少用到的用法。在实现strcpy函数时,书中给出了两种实现。```c//version 1, 使用数组实现(新手惯用)char *strcpy(char dst[], const char src[]){ int i... 阅读全文
posted @ 2014-12-08 12:40 野风鼓瑟震山岗 阅读(1267) 评论(0) 推荐(0) 编辑
摘要: # Python一些难以察觉的错误今天把微博的收藏夹打开,发现以前很多收藏的好文章还没有细细研究,今天开始要慢慢研究总结总结。今天看的这篇文章地址:http://blog.amir.rachum.com/blog/2013/07/06/python-common-newbie-mistakes-pa... 阅读全文
posted @ 2014-11-25 10:11 野风鼓瑟震山岗 阅读(232) 评论(0) 推荐(0) 编辑
摘要: # C语言中的内存压缩技术## 前言在整个研究生阶段我都在参与一个LTE协议栈实现的项目,在这个项目中,我们利用一个自己编写的有限状态机框架将协议栈中每一层实现为一个内核模块。我们知道,在编写内核代码时需要考虑内存的使用情况,如果使用内存超出了限制会导致Linux内核崩溃。在我负责的模块中,有的结构... 阅读全文
posted @ 2014-11-21 00:12 野风鼓瑟震山岗 阅读(987) 评论(0) 推荐(0) 编辑
摘要: ##二叉查找树的性质当一棵二叉树满足下面条件的时候就成了二叉查找树:对于树的任意一个节点,左儿子的值比右儿子小(或者反过来也行)。二叉查找树本质还是二叉树,因此也具有二叉树的性质。##二叉查找树的操作###1. 判断某元素是否在树中:contains这个操作比较简单,递归查找树根.```cpp//公... 阅读全文
posted @ 2014-08-10 20:32 野风鼓瑟震山岗 阅读(253) 评论(0) 推荐(0) 编辑
摘要: # 指针与指针的引用、指针的指针本文简单辨析一下C/C++中的几个概念。##指针在C和C++中都存在指针的概念。 - 指针的本质:一个变量。 - 指针的类型:指针类型(与指向的类型有关)。 - 指针的内容:地址。 如:```cppint a = 1;int *pa = &a;```简单来说,指... 阅读全文
posted @ 2014-08-10 20:30 野风鼓瑟震山岗 阅读(297) 评论(0) 推荐(0) 编辑
摘要: # C++ 中的virtual关键词##动态绑定所谓动态绑定,我的理解就是一个函数在调用之前无法得知参数的具体类型(基类还是派生类)。C++ Primer上描述了两种动态绑定的情况:> 要触发动态绑定,必须满足两个条件:一、指定为虚函数的成员函数。二、通过基类类型的引用或指针进行函数调用。##基类和... 阅读全文
posted @ 2014-08-05 19:41 野风鼓瑟震山岗 阅读(359) 评论(0) 推荐(0) 编辑
摘要: ##区别----------基本上来说,class和typename几乎没有区别。在可以使用class的地方都可以使用typename,在使用typename的地方也**几乎**可以使用class。 可以看出我加黑了两个子:几乎,这说明二者还是有一定区别的。先看下面的代码:```cpptempl... 阅读全文
posted @ 2014-08-04 19:21 野风鼓瑟震山岗 阅读(916) 评论(0) 推荐(0) 编辑
摘要: 最近一段时间一直在看有关Nginx的资料以及Nginx的源码。看开源源码的目的主要是学习,学习别人的设计思想,学习别人的编码技巧。另外也开始自己的个人开源项目的规划。 我给自己划定的开源软件学习集中在C/C++和Python语言。因为我想泛不如精吧,集中精力把这几个搞好,以后接触其他语言的项目也应该可以游刃有余了。 C语言目前的开源项目就是Nginx,Python项目先看看与Nginx有关的N... 阅读全文
posted @ 2014-05-19 16:38 野风鼓瑟震山岗 阅读(206) 评论(0) 推荐(0) 编辑