掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
アプリケーションパスを取得するには? (ID:51382)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> int main(int argc, char *argv[])とした場合に > argv[0]に入っています。 argv[0]にパスまでは入っていない可能性があります。 例えば, int puts (const char *); int main (int argc, char ** argv) { puts(argv[0]); return 0; } というプログラムをコンパイルして,コマンドラインから test と起動した場合,出力は test となります。 #VC++ 5.0及び.Net Framework附属C/C++コンパイラで確認。 確実にパスが欲しければGetModuleFileName APIを呼び出す必要があります。 > argv[0]の場合、書き換えるのはよろしくないので > テンポラリにコピーしてからの方がいいと思います えーっと,argv[0]自体を書き換えても問題は発生しないことが,標準によって保証されています。 スタイルの問題として,書き換えることは良くないと思いますが。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.