私は外部ファイル(.txtファイル)からデータを読み込むゲームを作っています。私が宣言して*fp
をfopen()
関数に定義し、それにファイルのディレクトリを与えると、それはうまく動作します。 しかし、ここに問題があります。自分のプログラムを別のコンピュータやディレクトリに送るときは、ディレクトリが変わってしまいます。そのため、ゲームはファイルからデータを読み込むことができません。 プログラムのフォルダがどこにあっても、すべてのファイルの名前を検索して開く方法が必要です。C - アクセスする必要のあるファイルの名前を検出するプログラムを作成するにはどうすればよいですか?
-4
A
答えて
0
これはオペレーティングシステム固有のものです。 Linux上で、あなたは、しかし、このソリューションは、Linuxでのみ動作しますlocate
シェルコマンドを使用して、その出力(http://www.linfo.org/locate.html)
C: Run a System Command and Get Output?
How do I execute a Shell built-in command with a C function?
を解析することができます。私はヤノの上記のコメントのソリューションが良いと思う...
関連する問題
- 1. SQL Express 2016の名前付きインスタンスをプログラムで作成するにはどうすればよいですか?
- 2. ファイルの作成、変更、アクセス日をプログラムで変更するにはどうすればよいですか?
- 3. テーブルと列の名前変更操作を検出するにはどうすればよいですか?
- 4. ファイルを変更、名前変更、または作成するプロセスを検出するにはどうすればよいですか?
- 5. ファイルがネットワーク上にあるかどうかを検出するにはどうすればよいですか?
- 6. ファイル作成時間を.txtの名前に追加するにはどうすればよいですか?
- 7. パスワードでキーボードランをプログラムで作成/検出するにはどうすればよいですか?
- 8. バッチウィンドウ - 異なるフォルダにある多くのファイルの名前を変更するループを作成するにはどうすればよいですか?
- 9. Visual Studio Expressのフィルタツリーでファイルを名前で検索するにはどうすればよいですか?
- 10. SaveFileDialogを閉じる前にファイル名を検証するにはどうすればよいですか?
- 11. ウェブページのGETリクエストの原点をプログラムで検出するにはどうすればよいですか? (C#)
- 12. 列にCellTemplatesがある場合、プログラムでGridViewを作成するにはどうすればよいですか?
- 13. プログラムでボタンを作成するにはどうすればよいですか?
- 14. プログラムでリストコントロールを作成するにはどうすればよいですか?
- 15. C++でランタイムエラーを検出するにはどうすればよいですか?
- 16. グローバルにアクセスできるように名前をエクスポートするにはどうすればいいですか?
- 17. ファイルの名前/パスを削除する前に印刷するにはどうすればよいですか?
- 18. Cのディレクトリ/サブディレクトリにあるファイルのインスタンスを検索するにはどうすればよいですか?
- 19. Interface Builderで作成されたNSTableViewにプログラムでアクセスするにはどうすればよいですか?
- 20. リストボックスでスクロールする必要のある要素をクリックするにはどうすればよいですか?
- 21. Objective-c:ダブルタップを検出するにはどうすればよいですか?
- 22. アプリケーションがドキュメントベースであるかどうかを検出するにはどうすればよいですか?
- 23. WPFツールキットのデータグリッドのC#でプログラムで列を作成するにはどうすればよいですか?
- 24. ちょうど開いたCSVファイルのファイル名にアクセスするにはどうすればよいですか?
- 25. ASP.NETの所在地に必要な役割を検出するにはどうすればよいですか?
- 26. Rの名前付きリストを2つ作成するにはどうすればよいですか?
- 27. OAuth2アクセストークンを必要とするRSpecテストを作成するにはどうすればよいですか?
- 28. パラメータを必要とするビューを作成するにはどうすればよいですか?ここ
- 29. TShellListViewで選択したファイルの名前を抽出するにはどうすればよいですか?
- 30. 複数の質問を解決するプログラムを作成するにはどうすればよいですか?
私にとって最も簡単な解決策のような音は、あなたの実行可能ファイルと一緒に必要なファイルを単に配布することです。その階層内のすべてのサポートファイルで最上位ディレクトリをZip/tarにするか、またはユーザー/インストールスクリプトにファイルを指す環境変数を定義させる。プログラムは、必要なファイルをファイルシステム全体で検索することはありません。彼らはどこにいるのかを知っています。 – yano
C99標準ではディレクトリについて認識していません。しかし、POSIXはそうです。あなたの質問は、オペレーティングシステム固有のものです。あなたは[readdir(3)](http://man7.org/linux/man-pages/man3/readdir.3.html)、[nftw(3)](http://man7.org/linux/ man-pages/man3/nftw.3.html)、[stat(2)](http://man7.org/linux/man-pages/man2/stat.2.html) –
あなたが知る必要があることは何ですか?ターゲットオペレーティングシステム上のソフトウェアインストールの基準。それはOSによって大きく異なります。 –