14-8-26

来源:互联网 发布:数据录入外包公司 编辑:程序博客网 时间:2024/06/11 01:45

1、设置进程属性,不继承socket的内容 
      int val=fcntl(server_fd,F_GETFD);
      val|=FD_CLOEXEC;
      fcntl(server_fd,F_SETFD,val);
2、select机制
    三种状态:
    1、以NULL作为时间结果,则select置于阻塞状态,一定要等到监视的文件描叙符发生变化为止。
    2、以0为时间,则为纯粹的非阻塞函数
    3、时间大于0,select在规定时间内阻塞,超时时间内,有事件就返回,超时也返回。
    没有循环的效果。
3、inet_ntoa 将网络地址(struct in_addr)转换成"."点隔的字符串格式
      in_addr  表示一个32为的IPv4地址
     struct in_addr {
            in_addr_t s_addr;
     };
     in_addr_t 一般为32位的unsigned int

4、sscanf的用处很大,支持正则表达式

      char  a[10] = "192.168.0.12";

      char  b[4] = {0};

      sscanf(a,"%d.%d.%d.%d",&b[0],&b[1],&b[2],&b[3]);

      sscanf(a,"%d.%d.%d.%d",&b[3],&b[2],&b[1],&b[0]);

      二者的结果不同:第一个b[0]=192,b[1]=168,b[2]=0,b[3]=12

                                  第二个b[0]=12,b[1]=0,b[2]=0,b[3]=0

       为什么,还不知道。

0 0
原创粉丝点击