c++
文章平均质量分 79
kailun_1990
这个作者很懒,什么都没留下…
展开
-
命名管道(FIFO)
进程间通信必须通过内核提供的通道,而且必须有一种办法在进程中标识内核提供的某个通道,前面讲过的匿名管道是用打开的文件描述符来标识的。如果要互相通信的几个进程没有从公共祖先那里继承文件描述符,它们怎么通信呢?内核提供一条通道不成问题,问题是如何标识这条通道才能使各进程都可以访问它?文件系统中的路径名是全局的,各进程都可以访问,因此可以用文件系统中的路径名来标识一个IPC通道。转载 2017-12-08 16:54:26 · 353 阅读 · 0 评论 -
fd_set解析
用到select,就难免不了要接触一下几个宏 fd_set set; FD_ZERO(&set); FD_SET(read_fd,&set); select(MAX_NUM+1,&set,NULL,NULL,NULL); if(FD_ISSET(read_fd,set){……}这几个经常是按这种次序组合出现的,之前虽然也用过,但说实话,也就是用,根本不转载 2017-12-08 18:14:54 · 989 阅读 · 0 评论 -
select()函数以及FD_ZERO、FD_SET、FD_CLR、FD_ISSET
select函数用于在非阻塞中,当一个套接字或一组套接字有信号时通知你,系统提供select函数来实现多路复用输入/输出模型,原型:int select(int maxfd,fd_set *rdset,fd_set *wrset,fd_set *exset,struct timeval *timeout); 所在的头文件为:#include 和#include转载 2017-12-08 18:22:34 · 163 阅读 · 0 评论 -
fd_set用法
select()机制中提供一fd_set的数据结构,实际上是一long类型的数组,每一个数组元素都能与一打开的文件句柄(不管是socket句柄,还是其他文件或命名管道或设备句柄)建立联系,建立联系的工作由程序员完成,当调用select()时,由内核根据IO状态修改fe_set的内容,由此来通知执行了select()的进程哪一socket或文件可读。 多端口复用函数select在调用前要首转载 2017-12-08 18:33:07 · 682 阅读 · 0 评论 -
C++中的static关键字
转载自;http://blog.csdn.net/hackbuteer1/article/details/7487694C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。一、面向过程设计中的static1、静态全局变量在全局变量前,加上关键字static,该变转载 2017-12-07 18:29:12 · 149 阅读 · 0 评论 -
C++命名空间 namespace的作用和使用解析
C++命名空间 namespace的作用和使用解析一、 为什么需要命名空间(问题提出)命名空间是ANSIC++引入的可以由用户命名的作用域,用来处理程序中 常见的同名冲突。在 C语言中定义了3个层次的作用域,即文件(编译单元)、函数和复合语句。C++又引入了类作用域,类是出现在文件内的。在不同的作用域中可以定义相同名字的变量,互不于扰,系统能够区别它们。1、全局变量的作用转载 2017-12-07 19:53:36 · 231 阅读 · 0 评论 -
std::map用法
映射和多重映射基于某一类型Key的键集的存在,提供对T类型的数据进行快速和高效的检索。对map而言,键只是指存储在容器中的某一成员。Map不支持副本键,multimap支持副本键。Map和multimap对象包涵了键和各个键有关的值,键和值的数据类型是不相同的,这与set不同。set中的key和value是Key类型的,而map中的key和value是一个pair结构中的两个分量。转载 2017-12-08 09:33:23 · 1209 阅读 · 0 评论 -
Makefile有三个非常有用的变量。分别是$@,$^,$<代表的意义分别是:
转载自:https://my.oschina.net/u/1413984/blog/199029假设我们有下面这样的一个程序,源代码如下: /* main.c */ #include "mytool1.h" #include "mytool2.h" int main(int argc,char **argv) { mytool1_print("h转载 2018-01-12 14:22:55 · 7630 阅读 · 0 评论 -
C++ 中read和write函数
转载自:http://blog.sina.com.cn/s/blog_6ae8b50d0100udpd.html1. read #include unistd.h> ssize_t read(int filedes, void *buf, size_t nbytes); 返回值:读取到的字节数;0(读到 EOF);-1(出转载 2018-01-17 11:55:22 · 27795 阅读 · 2 评论