001
23.11.2003, 17:06 Uhr
Pablo
Supertux (Operator)
|
Also, wenn ich das richtig verstanden habe:
Code: |
$ ./programm 111111-20 222222-18
|
soll die Eingabe sein. Dann versuche folgendes:
C++: |
#include <stdio.h> int main(int argc, char** argv) { int matnmr[2]; int note[2]; int i; sscanf(argv[1],"%d-%d", &matnmr[0], ¬e[0]); sscanf(argv[2],"%d-%d", &matnmr[1], ¬e[1]);
for(i=0; i<2; ++i) printf("Mat nmr: %d. Note: %d\n", matnmr[i], note[i]);
return 0; }
|
Bearbeitung: |
Das wäre für den allgemeinen Fall, dass man beliebig viele xxxxxx-yy übergibt.
C++: |
#include <stdio.h> #include <malloc.h> int main(int argc, char** argv) { int* matnmr; int* note; int i; if ((matnmr = (int*)malloc(sizeof(int)*(argc-1)))==NULL) { fprintf(stderr, "Kein Speicher mehr.\n"); return 1; } if ((note = (int*)malloc(sizeof(int)*(argc-1)))==NULL) { free(matnmr); fprintf(stderr, "Kein Speicher mehr.\n"); return 1; } for(i=0; i<argc-1; ++i) sscanf(argv[i+1],"%d-%d", &matnmr[i], ¬e[i]);
for(i=0; i<argc-1; ++i) printf("Mat nmr: %d. Note: %d\n", matnmr[i], note[i]);
free(matnmr); free(note);
return 0; }
|
|
-- A! Elbereth Gilthoniel! silivren penna míriel o menel aglar elenath, Gilthoniel, A! Elbereth! Dieser Post wurde am 23.11.2003 um 17:20 Uhr von Pablo Yanez Trujillo editiert. |