ceacer 2 已发布 1月29号 分享 已发布 1月29号 gethostname() 函数在 Linux 系统中用于获取当前系统的主机名 如果你想要获取完整的域名(包括域名和顶级域名),你可以使用 getaddrinfo() 函数。这个函数会解析主机名并返回一个包含地址信息的结构体数组。你可以从这些信息中提取出主机名和域名。下面是一个简单的示例: #include #include #include #include #include #include int main() { const char *hostname = "example.com"; struct addrinfo hints, *servinfo; int rv; memset(&hints, 0, sizeof(hints)); hints.ai_family = AF_UNSPEC; // 使用 IPv4 或 IPv6 hints.ai_socktype = SOCK_STREAM; // 使用 TCP 协议 if ((rv = getaddrinfo(hostname, NULL, &hints, &servinfo)) != 0) { fprintf(stderr, "getaddrinfo: %s\n", gai_strerror(rv)); return 1; } for (struct addrinfo *p = servinfo; p != NULL; p = p->ai_next) { char hostname[NI_MAXHOST]; if (getnameinfo(p->ai_addr, p->ai_addrlen, hostname, NI_MAXHOST, NULL, 0, NI_NUMERICHOST) == 0) { printf("Hostname: %s\n", hostname); } } freeaddrinfo(servinfo); return 0; } 这个示例会输出类似以下的结果: Hostname: example.com 请注意,这个示例使用了 C 语言编写,但你可以根据需要将其转换为其他编程语言。 评论链接 在其他网站上分享 更多分享选项...
推荐帖
创建账户或登录以发表评论
您需要成为会员才能发表评论
创建一个帐户
在我们的社区注册一个新账户。很简单!
注册新账户登入
已有账户?在此登录
立即登录