0

現時点では、以下のコードで示すようにファイルを読み込んでいます。ただし、ファイルの名前を入力してそのファイルを同じ方法で処理できるようにしたいのですが、Microsoft Visual C++ 2010 Express を使用しています。コード:

int main (int argc, char *argv[])
{

static const int MAX_FILE_ROWS = 10;

double lines[MAX_FILE_ROWS][4];
FILE *file = fopen("filename.txt", "r");

for (int i = 0; i < MAX_FILE_ROWS; i++){
if (feof(file))
    break;

fscanf(file, "%lf %lf %lf %lf", &(lines[i][0]), &(lines[i][1]), &(lines[i][2]), &(lines[i][3]));     
printf("%f %f %f %f\n", lines[i][0], lines[i][1], lines[i][2], lines[i][3]);
}

fclose(file);
4

1 に答える 1

0

メインの署名は次のとおりです。

int main(int argc, char* argv[]);

2 番目のパラメーターである argv[1] は、入力するファイルの名前になります。最初はアプリケーション自体のフルパスなので、

argv[1]

コマンドライン引数の最初のパラメーターを提供します。コード内のファイルの名前を argv[1] に置き換えます。それだ。

したがって、コードは次のようになります。

FILE *file = fopen(argv[1], "r");
于 2012-05-06T03:05:02.530 に答える