zoukankan      html  css  js  c++  java
  • 小窍门

    如何将域名转化为IP地址
    #include <stdio.h>
    #include <sys/socket.h>
    #include <sys/types.h>
    #include <netdb.h>
    #include <netinet/in.h>
    #include <string.h>
    #include <stdlib.h>
    const char *getIPAddrbyHostname(const char *hostname)
    {
        static char s[128];
        memset(s, 0, sizeof(s));
        struct hostent *h;
        h = gethostbyname(hostname);
        strcpy(s, inet_ntoa(*((struct in_addr *) h->h_addr)));
        return s;
    }
    如何将struct sockaddr_in转化为IP地址
    const char *getIPAddrbyaddr_in(struct sockaddr_in *client_addr)
    {
         return inet_ntoa(client_addr->sin_addr);
    }
    
    void sockaddr_toa(const struct sockaddr_in *addr, char *IPAddr)
    {
        unsigned char *p = (unsigned char *)&(addr->sin_addr.s_addr);
        sprintf(IPAddr, "%u.%u.%u.%u", p[0], p[1], p[2], p[3]);
    }
    如何得到一个socket自身的sockaddr和socket连接的远端 sockaddr
    int getpeername(int sockfd, struct sockaddr *addr, socklen_t *addrlen);
    得到远端sockaddr
    
    
    
    int getsockname(int sockfd, struct sockaddr *addr, socklen_t *addrlen);
    得到自身sockaddr
  • 相关阅读:
    pyhanlp 实体命名识别
    NABCD需求分析
    源代码
    遇到的问题和解决方法
    运行及总结
    测试与调试
    读《一个程序猿的生命周期》和《人,绩效和职业道德》有感
    面向对象程序设计
    设计类图
    SRS文档
  • 原文地址:https://www.cnblogs.com/shichuan/p/4496323.html
Copyright © 2011-2022 走看看