Linux下gethostname的返回值含义

571
2024/8/29 9:31:19
栏目: 智能运维
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在 Linux 系统下,gethostname() 函数用于获取当前系统的主机名

函数原型如下:

#include <unistd.h>

int gethostname(char *name, size_t len);

参数说明:

  • name:一个字符数组指针,用于存储主机名。
  • len:要检索的主机名的最大长度。

返回值:

  • 成功时,gethostname() 函数返回 0。
  • 失败时,函数返回 -1,并设置 errno 以指示错误。

以下是一个简单的示例,展示了如何使用 gethostname() 函数:

#include<stdio.h>
#include <unistd.h>
#include<limits.h>

int main() {
    char hostname[HOST_NAME_MAX + 1];
    int result = gethostname(hostname, sizeof(hostname));

    if (result == 0) {
        printf("Hostname: %s\n", hostname);
    } else {
        perror("Error in gethostname");
    }

    return 0;
}

这段代码将打印出当前系统的主机名。如果在调用 gethostname() 时发生错误,程序将输出相应的错误信息。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: linux软连接源文件被删除怎么办