2016年8月22日

socket套接字

摘要: 网络层的“ip地址”可以唯一标识网络中的主机,而传输层的“协议+端口”可以唯一标识主机中的应用程序(进程)。这样利用三元组(ip地址,协议,端口)就可以标识网络的进程了,网络中的进程通信就可以利用这个标志与其它进程进行交互。 网络中的进程是通过socket来通信的。 下面介绍基本的函数: domai 阅读全文

posted @ 2016-08-22 21:58 yiyedada 阅读(256) 评论(0) 推荐(0)

popen:让进程看似文件

摘要: popen打开一个指向进程的带缓冲的连接: popen的第一个参数是要打开的命令的名称;它可以是任意的shell命令。 第二个参数可以是"r"或"w"。 例如: 待运行之后在贴显示结果 阅读全文

posted @ 2016-08-22 21:27 yiyedada 阅读(380) 评论(0) 推荐(0)

fdopen:让文件描述符像文件一样使用

摘要: fdopen与fopen类似,返回一个FILE *类型的值,不同的是此函数以文件描述符而非文件作为参数。 如果只知道文件描述符而不清楚文件名的时候可以使用fdopen命令。 使用fdopen使得对远端的进程的处理就如同处理常规文件一样。 sscanf: 从一个字符串中读进与指定格式相符的数据。 阅读全文

posted @ 2016-08-22 17:52 yiyedada 阅读(309) 评论(0) 推荐(0)

关于IO重定向

摘要: 首先,Unix进程使用文件描述符0,1,2作为标准输入、输出和错误的通道。 其次,当进程请求一个新的文件描述符的时候,系统内核将最低可用的文件描述符赋给它。 第三,文件描述符集合通过exec调用传递,且不会被改变。 如何将stdin定向到文件 方法1 :close then open 方法2 :op 阅读全文

posted @ 2016-08-22 14:54 yiyedada 阅读(150) 评论(0) 推荐(0)

BUFSIZ

摘要: 转http://www.judymax.com/archives/262 今天在看示例程序时冒出来一句args = emalloc(BUFSIZ); BUFSIZ是什么意思,查了一下才明白。 这是stdio.h 中的一个宏定义,内容如下: 由注释即可知,这个BUFSIZ代表了默认的缓冲大小。 它具体 阅读全文

posted @ 2016-08-22 09:31 yiyedada 阅读(3704) 评论(1) 推荐(3)

malloc和realloc

摘要: malloc函数: malloc 向系统申请分配指定size个字节的内存空间。 如果分配成功则返回指向被分配内存的指针(此存储区中的初始值不确定),否则返回空指针NULL。 realloc函数 先判断当前的指针是否有足够的连续空间,如果有,扩大mem_address指向的地址,并且将mem_addr 阅读全文

posted @ 2016-08-22 09:25 yiyedada 阅读(144) 评论(0) 推荐(0)

导航