gccwindowsを使用しています。 OSはwindows XPです。 c:\%homepath%\ desktopに書き込めるように、homepath変数をCプログラムにインポートするにはどうすればよいですか?私は次のようなものを使いたいと思います:gccを使用してCプログラムにhomepathをインポートする方法
fd = fopen("C:\\%%homepath%%\\desktop\\helloworld.txt","w")
;
gccwindowsを使用しています。 OSはwindows XPです。 c:\%homepath%\ desktopに書き込めるように、homepath変数をCプログラムにインポートするにはどうすればよいですか?私は次のようなものを使いたいと思います:gccを使用してCプログラムにhomepathをインポートする方法
fd = fopen("C:\\%%homepath%%\\desktop\\helloworld.txt","w")
;
getenv()を使用して環境変数の値を取得し、sprintfまたはstrcatを使用してパスを作成します。
getenv("homepath")
を使用して、環境変数の値を取得します。変数が定義されていない場合(getenv
はその場合はNULL
を返します)を処理する必要があります。あなたが値homepath
と\\desktop\\helloworld.txt
を収容するのに十分なパスが大きな作るべきsprintf
char * homepath = getenv("homepath");
if(homepath == null) {
/* variable HOMEPATH has not been defined */
}
sprintf(path,"%s\\desktop\\helloworld.txt",homepath);
パスの使用を構成する
。
文字列に\\
を使用することにも注意してください。単一の\
は使用できません。
注:実際には、HOMEDRIVEの値も取得し、HOMEPATHに追加する必要があります。多くの企業環境では、ホームディレクトリは大規模なネットワークアプライアンスまたはサーバー上に保持されます。