温馨提示×

Linux下gethostname的返回值含义

小樊
82
2024-08-29 08:47:50
栏目: 智能运维

在 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() 时发生错误,程序将输出相应的错误信息。

0