摘要: getnameinfo - address-to-name translation in protocol-independent manner #include <sys/socket.h> #include <netdb.h> int getnameinfo(const struct sockaddr *sa, socklen_t salen, char *host, size_t hostlen, char *serv, size_t servlen, int f... 阅读全文
posted @ 2012-10-18 21:37 greencolor 阅读(215) 评论(0) 推荐(0) 编辑
摘要: #include <netdb.h>#include <sys/socket.h>int main(int argc, char **argv){char *ptr,**pptr;struct hostent *hptr;char str[32];char ipaddr[16];struct in_addr *hipaddr;/* 取得命令后第一个参数,即要解析的IP地址 */ptr = argv[1];/* 调用inet_aton(),ptr就是以字符串存放的地方的指针,hipaddr是in_addr形式的地址 */if(!inet_aton(ptr,hipaddr) 阅读全文
posted @ 2012-10-18 17:20 greencolor 阅读(339) 评论(0) 推荐(0) 编辑
摘要: getpeername - get name of connected peer socket Synopsis #include <sys/socket.h> int getpeername(int s, struct sockaddr *name, socklen_t *namelen); Description getpeername() returns the name of the peer connected to socket s. The namelen parameter should be initialized to indicate the amount o 阅读全文
posted @ 2012-10-18 17:12 greencolor 阅读(278) 评论(0) 推荐(0) 编辑
摘要: void reader_function ( void );void writer_function ( void ); char buffer;int buffer_has_item=0;pthread_mutex_t mutex;struct timespec delay;void main ( void ){ pthread_t reader; /* 定义延迟时间*/ delay.tv_sec = 2; delay.tv_nec = 0; /* 用默认属性初始化一个互斥锁对象*/ pthread_mutex_init (&mutex,NULL); pthread_create(& 阅读全文
posted @ 2012-10-18 16:03 greencolor 阅读(388) 评论(0) 推荐(0) 编辑
摘要: assert宏的原型定义在assert.h中,其作用是如果它的条件返回错误,则终止程序执行.原型定义: #include "assert.h"void assert (int expression);assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程序运行。 阅读全文
posted @ 2012-10-18 15:34 greencolor 阅读(148) 评论(0) 推荐(0) 编辑