地址:https://qingmu.blog.csdn.net/article/details/115825036?spm=1001.2014.3001.5502
1、原理
我在在通过域名解析获取IP的过程中一般使用的是DNS域名解析。
DNS协议是一种应用层协议,他是基于UDP来实现的。
2、代码实现
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <netdb.h>
extern int h_errno;
int main(int argc, char \*\*argv)
{
char \*ptr, \*\*pptr;
char str[INET_ADDRSTRLEN];
struct hostent \*hptr;
while (--argc> 0)
{
ptr = \*++argv; // 传入域名
if ( (hptr = gethostbyname (ptr) ) == NULL) // 完成域名解析
{
printf("gethostbyname error for host: %s: %s",ptr, hstrerror (h_errno) );
continue;
}
printf ("official hostname: %s\n", hptr->h_name);
for (pptr=hptr->h_aliases; \*pptr!= NULL; pptr++){
printf ("\talias: %s\n", \*pptr);
}
switch (hptr->h_addrtype)
{
case AF_INET:
pptr = hptr->h_addr_list;
for ( ; \*pptr != NULL; pptr++) //hptr->h\_addrtype我们获取的IP地址
printf ("\taddress: %s\n",inet\_ntop (hptr->h_addrtype, \*pptr, str, sizeof (str)));
break;
## 最后
**自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。**
**深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。**
**因此收集整理了一份《2024年嵌入式&物联网开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。**
![img](https://img-blog.csdnimg.cn/img_convert/2216e3e968c998173b844be51a224243.png)
![img](https://img-blog.csdnimg.cn/img_convert/fc3be610cf9030d82a403ee1917f8d95.jpeg)
![img](https://img-blog.csdnimg.cn/img_convert/fb067327e9511b3a40501a7a5a9304a3.png)
![img](https://img-blog.csdnimg.cn/img_convert/8dc88e4a2a04405421e7eed33c061fe8.png)
![img](https://img-blog.csdnimg.cn/img_convert/5997962e862c8522c95fd716c158f945.png)
![img](https://img-blog.csdnimg.cn/img_convert/152cf133d617e1838fa74771afa12815.png)
![](https://img-blog.csdnimg.cn/img_convert/54e3c0760a5b38a305871c17902b35c1.png)
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上嵌入式&物联网开发知识点,真正体系化!**
[**如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!**](https://bbs.csdn.net/topics/618654289)
**由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**!!
654289)
**由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**!!