入力ファイルが開かない?

解決


パンナコッタ  2003-11-25 20:54:53  No: 52597  IP: [192.*.*.*]

タイトルにも書いていたように入力ファイルが開きません。

 printf("enter file name \n ?");
      scanf("%s",aa);
      if (aa[0]=='d' && aa[1]=='i') {aa[1]='f'; pp=1;}
      if ((fl1 = fopen (aa,"r"))==NULL){
      printf("File not open \n");
      exit(1);
    }

入力ファイルを開くプログラムは、このようになっています。
aaは”char  aa[81]”で実行画面でファイル名”df・・”と入力すると
File not open とでてきます。
プログラムがどこかおかしいのでしょうか?それとも入力データに間違いがあるのでしょうか?
可能性がある原因を教えてください。
お願いします。

編集 削除
YuO  2003-11-25 22:45:37  No: 52598  IP: [192.*.*.*]

単にカレントディレクトリにファイルがないだけでは?

aaの中身を出力してみるとか,
VC++のfopenはerrnoを設定するようなのでerrnoを調べてみるのが良いかと。

編集 削除
AUT`s  2003-11-26 11:58:21  No: 52599  IP: [192.*.*.*]

改行が入ってるとか。”・・”<これ。scanfの仕様を忘れたので、なんとも。
> if ((fl1 = fopen (aa,"r"))==NULL){
の行にbreakでも仕込んで、aaの内容を確認でもしてみたら〜

編集 削除
パンナコッタ  2003-11-26 14:53:21  No: 52600  IP: [192.*.*.*]

ファイルが開くようになりました。
質問に答えていただいて、ありがとうございました。

編集 削除