摘要:
从XXX.src.rpm中提取源代码包 阅读全文
摘要:
[extern 变量] [extern 函数]解析 这种情况下的extern说明变量或者函数声明在其他的源文件里,而不用include头文件的方式来引用该函数,在链接时,链接器在各个模块中搜索这个变量或者函数来进行最终链接。 [extern “C”] 解析 使用这种extern的情况多发生在使用C++调用由C写成的函数库时,此时编译过程中常发生编译器找不到C函数的问题,从而导致链接失败。为了... 阅读全文
摘要:
最近研究Lighttpd的源代码,发现代码中有很多宏定义,不直观,而且有的相当晦涩难懂。对付宏定义,其实有个偷懒的方法就是使用GCC的预编译机制,将它们展开,保存展开后的源代码,这样读起来就清晰多了。说白了就是使用gcc -E命令。比如有个源代码文件google.c,内容如下:struct sttest{ int a;};int main(){ #define INIT_STRUCT(st, va... 阅读全文
摘要:
<div class="motadou_spec_line">0 -- 定位errno.h的位置</div>我想看看errno.h文件的内容,咋知道它在哪里呢?<br /><br /><strong>第一个方法:全盘搜索errno.h。命令:find / -name errno.h</strong><pre class="pre_style">find / -name errno.h/usr/include/asm/errno.h/usr/include/asm-gene 阅读全文
摘要:
1. system(”command”); 使用该命令将开启一个子进程执行引号中的命令,父进程将等待子进程结束并继续执行下面的代码。 2. exec(”command”); 效果同system命令类似,区别是不会开启子进程,而是取代父进程,因此执行完引号中的命令后进程即结束。一般和fork配合使用。 3. `command`; 使用反引号调用外部命令能够捕获其标准输出,并按行返回且每行结束处附... 阅读全文
摘要:
导语:本文关于“虚”的话题涉及虚函数、虚析构函数、纯虚函数、虚基类等部分,简要的说明下在面临什么样的问题下使用这些概念?这些概念又是如何解决问题的。 阅读全文
摘要:
1 -- 协议memcached的客户端通过TCP连接与服务器通信(UDP协议的接口也可以使用,详细说明请参考”UDP 协议”部分)。一个给定的运行中的memcached服务器在某个(可配置的)端口上监听连接;客户端连接该端口,发送命令给服务器,读取反馈,最后关闭连接。没有必要发送一个专门的命令去结束会话。客户端可以在不需要该连接的时候就关闭它。注意:我们鼓励客户端缓存它们与服务器的连接,而不是每次要存储或读取数据的时候再次重新建立与服务器的连接。memcache同时打开很多连接不会对性能造成到大的影响,这是因为memcache在设计之处,就被设计成即使打开了很多连接(数百或者需要时上千个连接 阅读全文
摘要:
GCC4.1.2的extra qualification错误 阅读全文
摘要:
有时我们要在map、vector容器中查找符合条件的记录,map提供一个find的成员函数,但也仅限于查找关键字满足条件的记录,不支持值域的比较。如果我们要在值域中查找记录,该函数就无能无力了。而vector甚至连这样的成员函数都没有提供。所以一般情况下进行值域的查找,要么自己遍历数据,要么求助于STL的find_if函数。前种方法我们这里就不赘述了,只讲find_if函数。 阅读全文
摘要:
服务器存放数据的先后顺序,大端法、小端法,还有在网络编程中经常遇到的网络字节序。 阅读全文
摘要:
结构体对齐以及结构体大小的计算面试时,会经常碰到。经历过几次面试后,觉得蛮有必要,所以对这个问题总结了下。包括对齐的原理、计算大小的方法等等。 阅读全文