3

みなさん、こんにちは。ネットワークプログラミングクラス用に作成したサーバープログラムからファイルを開いて、クライアントプログラムに送信しようとしています。fopenを使ってみましたが

  strcat(cwd, msg);              //i append the directory to the filename
  printf("%s\n", cwd);

  if(n>0){
     req = fopen(msg, "r");      //fopen(~\\blah\\blah\\blah\\msg)

msgは、txtファイルの名前です。

私はこれをcで実行したいと思います。

何か案は?大変感謝しております。

印刷されたディレクトリが正しい場合でも、reqがnullであることが判明したことを追加したいと思います。

4

2 に答える 2

0

コード内のコメントから:

// fopen(~\\blah\\blah\\blah\\msg)

変数cwdは かもしれません~。もしそうなら、 FatalError が言及しているようにfopen()、あなたのためにそれを展開しません。私が使用したシステムでは、シェルだけがこれを行います。

回避策は、たとえば を呼び出してから、自分自身getenv("HOME")を展開すること~です。

于 2013-02-21T15:58:09.953 に答える