[cppll_novice:0767] Re: プログラムが決まったファイルを読み込む場合。

Subject:
[cppll_novice:0767] Re: プログラムが決まったファイルを読み込む場合。
From:
Masamichi Takatsu <taka2@...>
Date:
Tue, 18 Jan 2005 11:45:22 +0900
X-Mailer:
mnews [version 1.22PL6T1(IMAP4,UNICODE)] 2003-12/12(Fri)
Message-Id:
<050118114522.M0100468‐at‐XP.doga.jp>
In-Reply-To:
762
たかつです。

> …欲しいのは現dirぢゃないのか。実行コードのあるdirか。うーむ…
> UNIX系にそんなAPIあるっけ? ふぉろーよろしく > だれぞ

それを知る方法は UNIX にはありません。

で、argv[0] の方も意味がある文字列になっているとは限らないのですが、
大抵の場合、 argv[0] にはシェルのコマンドラインに指定した文字列が
そのまま入っているものですから、実行ファイルのあるディレクトリを
知るには

・フルパス(/で始まる)の場合は、そのまま
・相対パスの場合(/が含まれる)は、カレントディレクトリと連結
・そうでなければ、環境変数 PATH から探索

といった処理を行うのが順当な手段かと思います。

もっとも、UNIX の場合は、プログラムと同じディレクトリにファイルを置く
なんていうのは邪道で、普通は
       /usr/local/プログラム名/…
とか
       /usr/local/etc/プログラム名/…
にハードコートするものだと思います。

詳しくは
http://www.adl.nii.ac.jp/~moro/unix-programmer/faq-j_2.html#SEC23
こちらを読んでください。

PROJECT TEAM DoGA 高津正道                            taka2@...
                                                  TBD00456@...
                    PROJECT TEAM DoGAのホームページ → http://doga.jp/
1月18日(火) 今日のマーフィーの法則        [ウインフィールドの「行く先の道順」の金言]
道を教える人が「簡単にわかりますよ」と言えば言うほど、迷子になりやすい。

スレッド

Navigation

検索

[検索ヘルプ]

Maintener: Tietew <www.tietew.jp>
Powered by Ruby on Rails, Mongrel, PostgreSQL, and Hyper Estraier.
click here