/* Zeichenklassifizierung, Flieákommazahl */ /* Datei: zeichen2.c */ #include #include #include #include char puffer[128]; int main (int argc, char ** argv) { FILE * fp; int i,x; int punkt = 0; printf ("\x1b[2JEingabe einer Flieákommazahl\n\n"); if (argc != 1) { fp = freopen (argv[1],"r",stdin); if (fp == NULL) { fprintf(stderr,"\nDatei %s unge”ffnet",argv[1]); exit (3); } } for (i =0; i < 128; i++) puffer[i] = 0; i = 0; while (( x = getch()) != '\r') { if (isdigit(x)) { puffer[i++] = x; fputc (x,stdout) ; } if (ispunct(x) && !punkt) { puffer[i++] = x; fputc (x,stdout) ; punkt++; } } puffer[i] = '\0'; printf ("\n\nZahlenwert = %f\n",strtod(puffer,NULL)); return 0; }