4

コンピューター サイエンスの先生から、C++ を使用して完全に機能するコンソール アプリケーションを作成するプロジェクトが与えられました。そして作り始めました。しかし、ある時点で行き詰まりました。関数を使用して、編集可能なテキスト ( .txt) ファイルを開きたいですopen()。ただし、すべてのテキスト ファイル用に別のフォルダーを作成しました。open()通常、関数に完全なディレクトリ パスを指定する必要がありますが、これはF:\Work\C++\SchoolProject\TextFiles私の場合です。しかし、このフォルダーをポータブル ドライブにコピーSchoolProjectして友人の家に持っていき、友人のコンピューターでプログラムを実行しようとするとどうなるでしょうか。それはうまくいきますか?Workディレクトリにフォルダがある必要はFないか、Fディスクがまったくない可能性があるため、私が尋ねています。その場合、パスが変更されます。では、どのパスを入力する必要がありますかopen()open()他のコンピューターでプログラムを実行しようとするたびに関数内のアドレスを変更することなく、プログラムがすべてのコンピューターで動作するように機能します。ソースコードは説明に役立つ場合があります。ありがとう!

4

2 に答える 2

3

絶対パスを使用する代わりに、相対パスを使用する必要があります。フォルダーからプログラムを実行する場合、これが作業パスになります。次に、ファイル名またはフォルダーとファイル名のみを関数 open に渡すことで、このフォルダーまたはこのフォルダーのサブフォルダー内のファイルを開くことができます。したがって、開く代わりにC:\...単に open someFolder\someFile.txt.

于 2013-11-03T10:07:18.070 に答える