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 |