home *** CD-ROM | disk | FTP | other *** search
/ Sams Teach Yourself C in 21 Days (6th Edition) / STYC216E.ISO / mac / Examples / Day10 / memalloc.c < prev    next >
C/C++ Source or Header  |  2002-06-08  |  920b  |  46 lines

  1. /* Demonstrates the use of malloc() to allocate storage */
  2. /* space for string data. */
  3.  
  4. #include <stdio.h>
  5. #include <stdlib.h>
  6.  
  7. char count, *ptr, *p;
  8.  
  9. int main( void )
  10. {
  11.    /* Allocate a block of 35 bytes. Test for success. */
  12.    /* The exit() library function terminates the program. */
  13.  
  14.    ptr = malloc(35 * sizeof(char));
  15.  
  16.    if (ptr == NULL)
  17.    {
  18.        puts("Memory allocation error.");
  19.        return 1;
  20.    }
  21.  
  22.    /* Fill the string with values 65 through 90, */
  23.    /* which are the ASCII codes for A-Z. */
  24.  
  25.    /* p is a pointer used to step through the string. */
  26.    /* You want ptr to remain pointed at the start */
  27.    /* of the string. */
  28.  
  29.    p = ptr;
  30.  
  31.    for (count = 65; count < 91 ; count++)
  32.        *p++ = count;
  33.  
  34.    /* Add the terminating null character. */
  35.  
  36.    *p = '\0';
  37.  
  38.    /* Display the string on the screen. */
  39.  
  40.    puts(ptr);
  41.  
  42.    free(ptr);
  43.  
  44.    return 0;
  45. }
  46.