Datei: strsav.c


    1   /*
    2    *      strsav.c
    3    *      String einlesen und speichern
    4    *      klin, Wed Dec 15 16:26:31 1999
    5    */
    6   
    7   #include <stdio.h>
    8   #include <stdlib.h>
    9   #include <string.h>
   10   
   11   #define NBUF 1024
   12   
   13   void main(void)
   14   {
   15     char buf[NBUF];       /* Puffer */
   16     char *str;            /* String */
   17     int len;              /* Laenge */
   18   
   19     /* String in Puffer buf einlesen */
   20     do {
   21       printf("String eingeben: ");
   22     } while (gets(buf) == NULL || buf[0] == '\0');
   23   
   24     /* Stringlaenge ermitteln */
   25     len = strlen(buf);
   26   
   27     /* Speicherplatz auf Heap reservieren: len + 1 */
   28     if ((str = malloc(len + 1)) == NULL) {
   29       printf("Fehler: Kein Speicherplatz!\n");
   30       exit(1);
   31     }
   32   
   33     /* String von Puffer in Heap kopieren */
   34     strcpy(str, buf);
   35   
   36     /* Ausgaben */
   37     printf("buf: [%s] &buf=%p\n", buf, buf);
   38     printf("str: [%s] &str=%p\n", str, str);
   39   
   40   } /* main() */


Erzeugt von c2html 1.01