视频连接
head
<iframe frameborder="no" height="600" scrolling="no" src="//player.bilibili.com/player.html?aid=209596352&bvid=BV13h411x7j6&cid=454622332&page=1" width="95%"></iframe>
end
/******* 域名解析 ************************** * 函数名:struct hostent *gethostbyname(const char *name); * 功能:域名解析 * 参数: * const char *name:域名或者ip * 返回值:struct hostent * * 成功:返回数据结构体 * 失败:NULL * ***************************************/ /********释放解析后的数据空间****************** * 函数名:void endhostent(void); * 功能:释放gethostbyname函数申请的空间 * 参数:无 * 返回值:无 * ****************************************/ #include <netdb.h> #include <stdio.h> #include <stdlib.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> int main(int argc, char *argv[]) { if (argc != 3) { printf("参数错误:./程序名称 ip地址或者域名 端口号\n"); return 0; } for (int i = 0; i < argc; i++) { printf("参数[%d] = %s\n", i, argv[i]); } printf("打印解析数据:\n"); struct hostent *hs = gethostbyname(argv[1]); if (hs == NULL) { perror("获取失败:"); exit(0); } char *ip = NULL; //将网络大端字节序的ip转为字符点分形式 ip = inet_ntoa(*(struct in_addr *)hs->h_addr_list[0]); //输出ip地址 printf("ip地址:%s\n", ip); //释放我转换的数据信息 endhostent(); return 0; } // struct hostent //只支持IPv4 // { // char *h_name; /* 主机正式名称 */ // char **h_aliases; /* 别名列表 */ // int h_addrtype; /* 主机地址类型 */ // int h_length; /* 地址的长度 */ // char **h_addr_list; /* 地址列表 */ // } //#define h_addr h_addr_list[0] /* 为了向后兼容 */