Manpages

名 前

canonicalize_file_name − 正 規 化 さ れ た 絶 対 パ ス 名 を 返 す

書 式

#define _GNU_SOURCE /* feature_test_macros(7) 参 照 */
#include <stdlib.h>

char *canonicalize_file_name(const char *path);

説 明

canonicalize_file_name() 関 数 は path に 対 応 す る 正 規 化 さ れ た 絶 対 パ ス 名 を 示 す ヌ ル 終 端 さ れ た 文 字 列 を 返 す 。 返 さ れ た 文 字 列 で は 、 シ ン ボ リ ッ ク リ ン ク や 、 パ ス 名 に 含 ま れ る ... は 展 開 さ れ る 。 連 続 す る ス ラ ッ シ ュ (/) 文 字 は ス ラ ッ シ ュ 一 つ に 置 換 さ れ る 。 返 さ れ る 文 字 列 は canonicalize_file_name() に よ り 動 的 に 割 り 当 て ら れ る 。 呼 び 出 し 側 は 、 必 要 な く な っ た 際 に は こ の 文 字 列 を free(3) で 解 放 す べ き で あ る 。

canonicalize_file_name(path) は 以 下 と 等 価 で あ る 。

realpath(path, NULL);

返 り 値

成 功 す る と 、 canonicalize_file_name() は ヌ ル 終 端 さ れ た 文 字 列 を 返 す 。 エ ラ ー の 場 合 (例 え ば 、 パ ス 名 の 中 に 読 み 込 め な か っ た り 存 在 し な い パ ス が 含 ま れ て い る 場 合 な ど )、 canonicalize_file_name() は NULL を 返 し 、 errno に エ ラ ー 内 容 を 示 す 値 を 設 定 す る 。

エ ラ ー

realpath(3) 参 照 。

準 拠

こ の 関 数 は GNU に よ る 拡 張 で あ る 。

関 連 項 目

readlink(2), realpath(3)

こ の 文 書 に つ い て

こ の man ペ ー ジ は Linux man−pages プ ロ ジ ェ ク ト の リ リ ー ス 3.79 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は http://www.kernel.org/doc/man−pages/ に 書 か れ て い る 。