- 浏览: 105853 次
最新评论
文章列表
互斥锁与条件变量
1、函数列表
<!--[if !supportLists]-->Ø
<!--[endif]-->int pthread_create(pthread_t *restrict
thread,
const pthread_attr_t *restrict attr,
void *(*start_routine)(void*), void *restrict arg);
线程创建函数,输入为属性attr(如果attr为NULL,则采用默认的属性),线程的执行函数为start_routine,执行函数的参数为arg;输出为当线程创建成 ...
- 2010-12-25 20:35
- 浏览 326
- 评论(0)
SystemV消息队列
<!--[if !supportLists]-->1、
<!--[endif]-->函数列表
<!--[if !supportLists]-->Ø
<!--[endif]-->key_t ftok(const char *pathname,
int proj_id);
//# include <sys/types.h>
//# include <sys/ipc.h>
IPC消息队列有一个key的属性(类型为key_t),一般由此函数产生,产生方法为:根据文件名pathname(必 ...
- 2010-12-25 20:33
- 浏览 297
- 评论(0)
FIFO
1、函数列表
<!--[if !supportLists]-->Ø
<!--[endif]-->int mkfifo(const char *pathname, mode_t
mode);
如果pathname指向的FIFO不存在,则创建FIFO,此时返回0;如果pathname指向的FIFO已经存在,则返回-1,errno==EEXIST。
关于mode,此函数已隐含包含O_CREATE和O_EXCL,也就是说要么创建一个新的FIFO,要么返回EEXIST错误。指定S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH表示 ...
- 2010-12-25 20:32
- 浏览 287
- 评论(0)
管道
<!--[if !supportLists]-->1、<!--[endif]-->函数列表
<!--[if !supportLists]-->Ø
<!--[endif]-->int pipe(int filedes[2]);//#include <unistd.h>
创建一个管道,返回的两个文件描述字filedes[0]和filedes[1]代表了管道,管道将以此两个文件描述字被使用。其中filedes[0]用来读,filedes[1]用来写。
有权限的每个进程都可以使用管道,因此对于每个进程而言,都拥有此管道的两 ...
- 2010-12-25 20:31
- 浏览 429
- 评论(0)
Linux静态和动态链接库使用实例
Ø 不同于Win32DLL,Linux标准对象中的所有函数都是直接导出的,都可以被调用程序所访问。也就是说不用头文件即可被导出。
Ø 静态和动态的区别
静态库的代码在编译时已经进入被包含到目标文件了;而动态库的代码要在目标文件运行的时候才会被包含进去,在编译的时候只是对动态库进行一个链接。
1、静态链接库实例
- 2010-06-04 12:16
- 浏览 472
- 评论(0)
Makefile的使用技巧
1、 makefile中的两种变量
Ø COMPILE=$(CC)$(CFLAGS) -c
在使用COMPILE的时候,CC和CFLAGS才会展开,并且是每次都会展开,所以当定义COMPILE的时候,即使CC和CFLAGS
- 2010-06-01 17:57
- 浏览 324
- 评论(0)
Makefile的使用技巧
1、 makefile中的两种变量
Ø COMPILE=$(CC)$(CFLAGS) -c
在使用COMPILE的时候,CC和CFLAGS才会展开,并且是每次都会展开,所以当定义COMPILE的时候,即使CC和CFLAGS
- 2010-06-01 17:56
- 浏览 325
- 评论(0)
autodel.sh脚本使用说明功能描述 自动删除过期的日志文件,具体删除天数,可以在脚本中" if((LogDay+3 < NowGetDay))"行进行修改; 日志格式类似:2010-5-12-12-59-44.txt技术点: @获取年月日数字 NowGetDay=`date +%d` NowGetMonth=`date +%m`NowGetYear=`date +%Y` @字符串与数字转换NowGetDay=`expr ${NowGetDay} + 0` 加号操作符两边必须是空格 @字符串的分割和截取 LogYear=`expr ${LogFileN ...
- 2010-05-12 10:47
- 浏览 363
- 评论(0)
Hash表理解
言归正传,哈希表又名散列表,其主要目的是用于解决数据的快速定位问题。考虑如下一个场景。 一列键值对数据,存储在一个table中,如何通过数据的关键字快速查找相应值呢?不要告诉我一个个拿出来比较key啊,呵呵。 (key-value这样的数据,要恰当的选择key,一般情况下key和value是等同的) 大家都知道,在所有的线性数据结构中,数组的定位速度最快,因为它可通过数组下标直接定位到相应的数组空间,就不需要一个个查找。而哈希表就是利用数组这个能够快速定位数据的结构解决以上的问题的。 具体如何做呢?大家是否有注意到前面说的话:“数组可以通过下标直接定位到相应的空间”,对就是这句 ...
- 2010-05-04 20:59
- 浏览 357
- 评论(0)
1、 概念
首先,什么是绑定?( what`s the definition of binding? )
c++编程思想上有说到:
Connecting a function call to a function body is called binding.(将函数体和函数调用关联起来,就叫绑定)
然后,那么什么是早绑定?(Early binding)
When binding is performed before the program is run (by the compiler and linker), it' s called early binding在程序运行之前(也 ...
- 2010-05-02 13:47
- 浏览 393
- 评论(0)
class如同int等内建类型一样,分配有一定大小的内存,本文通过基本类、含有虚函数的类、单继承的派生类和多重继承的派生类来考察类的内存布局规律。
1、普通类对象的大小
//普通类对象的内存布局
struct C000
{
};
struct C001
{
C001() : c_(0x01) {}
char c_;
};
struct C010
{
C010() : c1_(0x01),c2_(0x02) {}
char c1_;
char c2_;
};
struct C011
{
C011() : c1_(0x01),c2_(0x02) ...
- 2010-05-01 21:52
- 浏览 413
- 评论(0)
C测试小程序
1、 字符串类
1.1 strstr
功能:查找和获取子串
void test_strstr()
{
char *str="Borland International";
char *str1="B",*ptr1;
- 2010-05-01 20:43
- 浏览 335
- 评论(0)
1、 字符串类 1.1 find 功能:查找某个子串是否存在于字符串中。
void test_substr_exist() { string str="email:sjliwei2002@126.com"; int pos1=-1; string str0("liwei"); pos1=str.find(str0,0); if(pos1==-1) cout ...
- 2010-05-01 20:37
- 浏览 267
- 评论(0)
面向对象编程语言中的多重继承指的是一个类别可以同时从多于一个父类继承行为与特征的功能。与单一继承相对,单一继承指一个类别只可以继承自一个父类。 重温Java,发现Java竟然不支持类多重继承(直接继承类),却允许接口的多重继承。C++中类可以多重继承,Java中为什么不实现这个功能呢?多重继承会带来哪些问题,从而导致Java放弃类的多重继承? 再一深究,发现多年以来,多重继承一直是个敏感话题,赞成者看到的是免去笨拙的混合继承的利处,反对者看到的是多处混淆的弊端,例如变量的二义性,并且是多个变量。所以关于它的好处与风险之间孰轻孰重成为OO界多年争论的焦点。 其实最大的问题是出现拓补图,也就是 ...
- 2010-04-30 21:18
- 浏览 485
- 评论(0)
摘要:本文列出几个基本的STL map和STL set的问题,通过解答这些问题讲解了STL关联容器内部的数据结构,最后提出了关于UNIX/LINUX自带平衡二叉树库函数和map, set选择问题,并分析了map, set的优势之处。对于希望深入学习STL和希望了解STL map等关联容器底层数据结构的朋友来说,有一定的参考价值。
STL map和set的使用虽不复杂,但也有一些不易理解的地方,如:
· 为何map和set的插入删除效率比用其他序列容器高?
· 为何每次insert之后,以前保存的
- 2010-04-30 18:11
- 浏览 497
- 评论(0)