What we've missed out

dynamic allocation and deallocation of memory
malloc and free: used for allocating (and freeing up) memory for objects the size of which are not known at compile time --- dangerous! (No garbage-collector, possibility of memory leaks, crashes...


explicit type casts
    /* Prototypes : */
    double sqrt (double x);

    int n         = 2;
    double root_2 = sqrt ((double) n);
  


enumerated types
    enum DAYS = {SUN = 1, MON, TUE, WED, THUR, FRI, SAT}
        /* MON = 2, TUE = 3, ... */
  


unions
a variable that may hold (at different times) objects of different types and sizes


ANSI standard libraries
    <assert.h>  <float.h>   <math.h>    <stdarg.h>  <stdlib.h> 
    <ctype.h>   <limits.h>  <setjmp.h>  <stddef.h>  <string.h>
    <errno.h>   <locale.h>  <signal.h>  <stdio.h>   <time.h> 
  


The Pre-Processor
    #include
    #define
    #if
    #ifdef
    #ifndef
    #elif
    #else
    #endif
  



...previousup (conts)next...



About this document:

Produced from the SGML: /home/isd/public_html/_course_crash_in_c/_reml_grp/index.reml
On: 3/3/2003 at 17:43:41
Options: reml2 -i noindex -l long -o html -p multiple