В настоящее время я пытаюсь прочитать во входном файле 15000 целых чисел и передать эти значения в массив. Я очень устала, когда дело доходит до передачи аргументов командной строки в программу, поэтому, возможно, я делаю это неправильно. Вот что я кодировал до сих пор:
#include <stdio.h>
int main(int argc, char *argv[]) {
int i;
FILE *fp;
int c;
int values[15000];
char line[32];
int index = 0;
for (i = 1; i < argc; i++) {
fp = fopen(argv[i], "r");
if (fp == NULL) {
printf(stderr, "cat: can't open %s\n", argv[i]);
continue;
}
while (fgets(line, sizeof(line), fp) != NULL) {
scanf(line, "%d", values[index];
index++;
}
fclose(fp);
}
return 0;
}
Я вызываю gcc -o prob_5 input.txt из командной строки и получаю это сообщение об ошибке:
/usr/bin/ld:input.txt: file format not recognized; treating as linker script
/usr/bin/ld:input.txt: syntax error
collect2: ld returned 1 exit status
Ошибка в моем коде или аргументах командной строки, или в обоих?