
c 开发技巧
hjs1122
这个作者很懒,什么都没留下…
展开
-
开源的SIP协议栈 PJSIP
<br />PJSIP是一个开放源代码的SIP协议栈。它支持多种SIP的扩展功能,目前可说算是最流行的sip协议栈之一了。<br />下面列出其重要的几种优点:<br />1)代码层次非常清晰,从低级到高级都提供了很方便的接口供开发;<br />2)提供相当多的测试用例和一个基于pjsip开发的命令行UA程序供开发人员参考;<br /> 3).高度的可移殖性 <br /> 只需简单的编译一次,它能够在多种平台上运行(所有Windows 系统列, Windows Mobile, Linux, 所有Unix转载 2011-03-08 10:32:00 · 1057 阅读 · 0 评论 -
如何学好C++,用好类库很重要
<br />如果你有一定的C基础可能学起来比较容易些,但是学习C++的过程中又要尽量避免去使用一些C中的思想;平时还要多看一些高手写的代码,遇到问题多多思考,怎样才能把问题抽象化,以使自己头脑中有类的概念;最后别忘了经常上机自己调调程序,这是谁也代替不了的. <br />C++类库介绍 <br /><br /> 再次体现了C++保持核心语言的效率同时大力发展应用库的发展趋势!!在C++中,库的地位是非常高的。C++之父 Bjarne Stroustrup先生多次表示了设计库来扩充功能要好过设计更转载 2011-03-08 11:16:00 · 522 阅读 · 0 评论 -
C技巧:结构体参数转成不定参数
下面这段程序是一个C语言的小技巧,其展示了如何把一个参数为结构体的函数转成一个可变参数的函数,其中用到了宏和内建宏“__VA_ARGS__ ”,下面这段程序可以在GCC下正常编译通过:1234567891011121314151617181920#include #define func(...) myfunc((struct mystru){__VA_ARGS__}) structmystru { constchar*name; intnumber; }; voidmyfunc(structmystr转载 2011-03-07 23:21:00 · 567 阅读 · 0 评论 -
文件锁使用原理及其方法
<br />关于读写文件时文件锁的一些问题。<br /> bool flock ( int handle, int operation);<br /> man 2 flock 就可以查看flock的一些信息。<br /><br /> flock() 操作的 handle 必须是一个已经打开的文件指针。operation 可以是以下值之一:<br /> 要取得共享锁定(读取程序),将 operation 设为 LOCK_SH(PHP 4.0.1 以前的版本设置为 1)。<br /> 要取得独转载 2011-03-17 10:53:00 · 3594 阅读 · 0 评论 -
memmove、memcpy和memccpy简介
<br />memmove、memcpy和memccpy三个函数都是内存的拷贝,从一个缓冲区拷贝到另一个缓冲区。<br /> memmove(void *dest,void*src,int count)<br /> memcpy(void *dest,void *src,int count)<br /> memccpy(void*dest,void*src,int ch,int count)<br /><br /> 表头文件: #include <string.h><br /> 定义函数: voi转载 2011-03-17 16:58:00 · 516 阅读 · 0 评论 -
define特殊用法
#define Conn(x,y) x##y#define ToChar(x) #@x#define ToString(x) #xx##y表示什么?表示x连接y,举例说:int n = Conn(123,456); 结果就是n=123456;char* str = Conn(转载 2011-07-11 15:25:43 · 1021 阅读 · 0 评论 -
c语言中的正则表达式regex.h
如果用户熟悉Linux下的sed、awk、grep或vi,那么对正则表达式这一概念肯定不会陌生。由于它可以极大地简化处理字符串时的复杂度,因此现在已经在许多Linux实用工具中得到了应用。千万不要以为正则表达式只是Perl、Python、Bash等脚本语言的专利,作为C语言程序员转载 2011-07-28 20:24:35 · 3209 阅读 · 1 评论