函数

GLibget_home_dir

声明 [src]

const gchar*
g_get_home_dir (
  void
)

说明 [src]

获取当前用户的 home 目录。

与大多数 UNIX 工具一样,if HOME 环境变量设置为现有绝对路径名称,则此函数会返回该环境变量的值,而如果 HOME 为未设置状态,则会再退而访问 passwd 文件。

如果 HOME 中给定的路径是非绝对路径或不存在,或者不是目录,则结果是未定义的。

在版本 2.36 之前,此函数会忽略 HOME 环境变量,而是采用 passwd 数据库中的值。此问题已被更改,以便提高 GLib 与其他程序(以及 XDG 基准目录规范)的兼容性,并提高基于 GLib 的程序的可测试性(通过使其更易于从测试框架中运行)。

如果你的程序对新旧行为有很强的要求(并且不想增加对 GLib 的依赖以确保新行为生效),那么你应该直接检查 HOME 环境变量,或在调用 GLib 中的任何函数之前将其取消设置。

返回值

类型: const gchar*

当前用户的 home 目录。

数据由被调用函数所有。
此值为平台本机字符串,在 Unix 上使用首选操作系统编码,在 Windows 上使用 UTF-8。