自分のセンスや笑いの好みに影響を受けた作品を教えて

以下のソースファイル(test.c) が、
バイナリデータをテキストファイルに
するものらしいのですが、
ファイル名(例えば bi.dat)を指定する方法が
わかりません。

C++は勉強し始めたばかりで
詳しくありません。
よろしくお願い致します

#include <stdio.h>

int main( int argc, char *argv[])
{
FILE *fpIn;
FILE *fpOut;
short snData;

if( argc < 2)
{
printf("ファイル名を入れてください。");

return -1;
}

fpIn = fopen( "argv[1]" , "rb");
if( fpIn == NULL)
{
printf("入力ファイル %s を開けませんでした。", argv[1]);

return -2;
}
fpOut = fopen( "output.txt", "w");
if( fpOut == NULL)
{
printf("出力ファイル output.txt を開けませんでした。");

fclose(fpIn);
return -3;
}
while( fread( &snData, sizeof(short), 1, fpIn) == 1)

{
fprintf( fpOut, "%d\n", snData);

};
fclose(fpIn);
fclose(fpOut);
return 0;
}

A 回答 (3件)

>実行時に指定すればいいとのことですが、


>その方法はどのように
>すればいいのでしょうか。

コマンドプロントで実行するときに指定します。


C:\c>test.exe bi.dat
    • good
    • 0
この回答へのお礼

早速の回答有り難うございます。

お礼日時:2006/08/16 14:27

>fpIn = fopen( "argv[1]" , "rb");


の部分
fpIn = fopen( argv[1] , "rb");
にしてコンパイルしなおしてから
#1
    • good
    • 1
この回答へのお礼

丁寧な回答有り難うございます。
とても参考になりました。

お礼日時:2006/08/16 10:11

実行時に指定します。




C:\c>test.exe bi.dat

この回答への補足

実行時に指定すればいいとのことですが、
その方法はどのように
すればいいのでしょうか。
初心者の質問ですいません

お忙しいこととは存じますが、
よろしくお願い致します。

補足日時:2006/08/16 10:16
    • good
    • 0
この回答へのお礼

早い回答有り難うございます。

お礼日時:2006/08/16 10:14

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報