sscanf() wird nicht akzeptiert.
-
Hallo
Ich habe den Beitrag vom
http://www.c-plusplus.net/forum/viewtopic.php?t=93612
gelesen, und in etwa nachgebastelt:// Dev CPP #include <stdio.h> #include <stdlib.h> #define NEWLINE printf("\n"); int main(int argc, char *argv[]) { int Tag=00, Monat=00, Jahr=00; char *buffer="00.00.0000"; puts("Input the date , Format Bsp: 03.11.2004"); NEWLINE sscanf(buffer, "%d.%d.%d", &Tag, &Monat, &Jahr); printf("%s", buffer); system("PAUSE"); return 0; }
Ausgabe sieht folgendermassen aus:
Input the date , Format Bsp: 03.11.2004
00.00.0000Drücken Sie eine beliebige Taste . . .
... ich hoffe ihr riecht mein Problem.
Vielen Dank.
Gruss dönerkepap
-
Ist doch klar, dass der dir 00.00.0000 ausgibt, denn buffer ist : char *buffer="00.00.0000"; und den hast du nicht verändert.
sscanf ist nicht für das Ablesen von Eingaben am Bildschirm gedacht. Was du suchst ist scanf.
scanf("%d.%d.%d", &tag, &monat, &jahr);
sscanf(buffer, "%d.%d.%d", &Tag, &Monat, &Jahr);
macht folgendes. Er schreibt die 00 vom buffer in Tag, die 00 von buffer in Monat und die 0000 von buffer in Jahr.
-
Ahso Danke, hab da was wohl missverstanden
...Gruss dönerkepap