Befehl Linie Argumente und Datei-Input
Ich hatte eine schreckliche Zeit mit Datei-Eingabe von Kommandozeilen-Argumente im letzten semester und ich muss verwenden Sie es für eine übung, die ich auf Arbeit bin. Ich habe kodiert eine einfache shell, nur um es zu arbeiten:
prob_5.c
#include <stdio.h>
int main(int argc, char *argv[]) {
int i;
FILE *fp;
int c;
for (i = 1; i < argc; i++) {
fp = fopen(argv[i], "r");
if (fp == NULL) {
fprint(stderr, "cat: can't open %s\n", argv[i]);
continue;
}
while ((c = getc(fp)) != EOF) {
putchar(c);
}
fclose(fp);
}
return 0;
}
Ich kann nicht scheinen, daran zu erinnern, was die Befehle für das aufrufen meines Programms von der Befehlszeile aus. Ich habe versucht:
gcc -o prob_5 -g -ansi prob_5.c
Habe ich neu formatiert mein computer seit dem letzten semester, so bin ich vielleicht fehlt ein System-Pfad?
- Welche Fehler sind Sie immer? Was ist die Frage genau überhaupt?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sieht es aus wie dein Programm nur erwartet, dass ein argument: den Namen der Datei. Sie haben auch, um es zuerst kompilieren.
Wenn es nicht kompilieren, dann haben Sie ein weiteres Problem. Was wird zurückgegeben, beim ausführen
gcc
?gcc
ist ein standard-Linux-Programm, es funktioniert nur auf Windows 7, wenn Sie es installiert haben, und es ist in den Weg. Wenn Sie Visual Studio verwenden, sollten Sie wahrscheinlich kompilieren und führen Sie es über die GUI.printf
. Ich bin nicht sicher, wo Sie bekam, dass aus.