2012-01-05 7 views
0

ファイルとbmpファイルを作成して特定のディレクトリに格納します。私が確認したいのは、それが後にあることです(創造が成功したかどうか)。私は持っていますC++にbmpファイルが存在するか確認する

FILE *pfile; 
pfile = fopen("C:\Users\me\Test-Outputs\Capture Output\test.bmp", "r"); 

if(pfile != NULL) 
    worked! 
else 
    didnt work!! 

しかし、それは動作していません。それはファイルが存在しても存在しないと言います。誰が私が間違っているのか知っていますか?

+0

有効なCのように見えません。 –

+0

@filmor:OPがタイトルにC++を書いているのであれば、なぜそのタグを削除するのですか?ちょうどコードが有効なCであっても(ちょうど '働い!'と 'didnt work !!'の部分)、C++ではありません。 –

+0

まあ、それはC + +とは何の関係もありません(FILEの使用はそれを示しています)が、あなたが正しいです。そのために残念。 – filmor

答えて

6

二重バックスラッシュを使用します。単一のバックスラッシュは、C言語やC言語のエスケープ文字です。

+6

また、読みやすく、可搬性の高い単一のスラッシュを使用してください。 –

+0

あなたはこのコードの他のいくつかの場所でそれを実行したと信じられますか?このことはちょうど私に今始めていると思う。乾杯 – discodowney

0

fopen行に置き換え:あなたは別のバックスラッシュでバックスラッシュをエスケープする必要が

pfile = fopen("C:\\Users\\me\\Test-Outputs\\Capture Output\\test.bmp", "r"); 
1

を。お試しください

pfile = fopen("C:\\Users\\me\\Test-Outputs\\Capture Output\\test.bmp", "r"); 

スラッシュを使用すると効果があります。 filmorとして

0

は以下を使用し、言った:

pfile = fopen("C:\\Users\\me\\Test-Outputs\\Capture Output\\test.bmp", "r"); 
-1

私はそれを行うには良い方法は、「アクセス」機能を使用することだと思います。

#include <unistd.h> 
int access(const char *pathname, int mode); 

成功するとゼロを返します。

関連する問題