- 博客(10)
- 资源 (4)
- 收藏
- 关注
转载 操作系统标识宏
查看gcc所定义的宏的命令:cpp -dM /dev/null命令一: cpp -dM /dev/null命令二: gcc -dM -E - 1:OS MACRO: WINDOWS: _WIN32、WIN32; UNIX/LINUX: unix、__uni
2011-08-31 19:38:23 1307
转载 gcc 的visibility 使用
-fvisibility=default|internal|hidden|protectedgcc的visibility是说,如果编译的时候用了这个属性,那么动态库的符号都是hidden的,除非强制声明。1.创建一个c源文件,内容简单#include#
2011-08-31 19:32:27 3693
转载 c语言中的的内联(inline)函数
c/c++中的inline,使用在函数声明处,表示程序员请求编译器在此函数的被调用处将此函数实现插入,而不是像普通函数那样生成调用代码(申请是否有效取决于编译器)。一般地说,这样作的优点是省掉了调用函数的开销;缺点则是可能会增加代所生成目标代码的尺寸(二班的除外,二班情况下,in
2011-08-31 19:22:24 2183
转载 加锁解锁PHP实现
PHP并没有完善的线程支持,甚至部署到基于线程模型的httpd服务器都会产生一些问题,但即使是多进程模型下的PHP,也难免出现多进程共同访问同一资源的情况。比如整个程序共享的数据缓存,或者因为资源受限而必须对特定处理过程进行排队,以及针对每个用户生成唯一的某种标识的情形。PHP语
2011-08-31 11:30:13 7925
原创 Vim多行缩进及高级命令
Vim多行缩进技巧 1.按v进入visual状态,选择多行,用>或<缩进或缩出2. 通常根据语言特征使用自动缩进排版:在命令状态下对当前行用== (连按=两次), 或对多行用n==(n是自然数)表示自动缩进从当前行起的下面n行。你可以试试把代码缩进任意打乱再用n=
2011-08-11 11:04:30 91116 4
转载 程序的链接和装入及Linux下动态链接的实现
链接器和装入器的基本工作原理一个程序要想在内存中运行,除了编译之外还要经过链接和装入这两个步骤。从程序员的角度来看,引入这两个步骤带来的好处就是可以直接在程序中使用printf和errno这种有意义的函数名和变量名,而不用明确指明printf和errno在标准C库中的地址。当
2011-08-05 11:25:07 1065
转载 VIM 代码折叠
VIM 代码折叠VIM代码折叠方式可以用"foldmethod"选项来设置,如: set foldmethod=indent有6种方式来折叠代码1. manual //手工定义折叠2. indent //用缩进表示折叠3. expr //用表达式来定义折叠
2011-08-04 20:25:03 1282
翻译 Windows下C中__assume的作用
Microsoft Specific __assume(expression)The __assume keyword passes a hint to the optimizer. The optimizer assumes that the condition r
2011-08-04 17:12:36 2821
原创 在C/C++项目的开发中,防止头文件被重复加载的措施
在C/C++项目的开发中,为了防止头文件被重复加载,可以采用如下方式来避免。PHP源代码就是这么干的,比如Zend/zend.h中: 22 #ifndef ZEND_H 23 #define ZEND_H代码正文777 #endif /* ZEND_H */
2011-08-04 16:55:17 1734
原创 C++中extern “C”含义深层探索
1.引言 C++语言的创建初衷是“a better C”,但是这并不意味着C++中类似C语言的全局变量和函数所采用的编译和连接方式与C语言完全相同。作为一种欲与C兼容的语言,C++保留了一部分过程式语言的特点(被世人称为“不彻底地面向对象”),因而它可以定义不属于任何类的全局
2011-08-04 16:49:42 1065 2
Sisco 防火墙配置详细说明
2008-09-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人