home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 17 / CD_ASCQ_17_101194.iso / dos / prg / alb_c10 / chap_12 / ch12_06.c < prev    next >
Encoding:
C/C++ Source or Header  |  1994-09-08  |  1.4 KB  |  65 lines

  1. /*********************************************************************
  2. *  CH12_06.C                                            Unions  *
  3. *********************************************************************/
  4.  
  5. #include<stdio.h>
  6.  
  7. main( void)
  8. {
  9.     union exemple
  10.     {
  11.        int i;
  12.        double d;
  13.            char ch;
  14.     } mu= { 90}, alpha, *ptr= μ
  15.  
  16.     printf("\n taille des objets   mu: %d"
  17.            "\n\t\t     mu.i: %d , mu.d: %d , mu.ch: %d\n",
  18.             sizeof( mu), sizeof( mu.i), sizeof( mu.d), sizeof( mu.ch));
  19.  
  20.     printf("\n mu.i= %d\n mu.d= %.3lf\n mu.ch= %c\n",
  21.         mu.i, mu.d, mu.ch);
  22.  
  23.     mu.d= 89.012;
  24.     printf("\n mu.i= %d\n mu.d= %.3lf\n mu.ch= %c\n",
  25.         mu.i, mu.d, mu.ch);
  26.  
  27.     mu.ch= 'A';
  28.     printf("\n mu.i= %d\n mu.d= %.3lf\n mu.ch= %c\n",
  29.         mu.i, mu.d, mu.ch);
  30.  
  31.     ptr->i= 88;
  32.     printf("\n mu.i= %d\n mu.d= %.3lf\n mu.ch= %c\n",
  33.         ptr->i, ptr->d, ptr->ch);
  34.  
  35.  
  36.     alpha= mu; 
  37.     printf("\n alpha.i= %d\n alpha.d= %.3lf\n alpha.ch= %c\n",
  38.         alpha.i, alpha.d, alpha.ch);
  39. }
  40. /*
  41.  taille de l'objet     mu: 8
  42.             mu.i: 2, mu.d: 8 , mu.ch: 1
  43.  
  44.  mu.i= 90    qui est la valeur attendue.
  45.  mu.d= 0.000
  46.  mu.ch= Z
  47.  
  48.  mu.i= -7340
  49.  mu.d= 89.012    qui est la valeur attendue.
  50.  mu.ch= T
  51.  
  52.  mu.i= -7359
  53.  mu.d= 89.12
  54.  mu.ch= A        qui est la valeur attendue.
  55.  
  56.  mu.i= 88        qui est la valeur attendue.
  57.  mu.d= 89.012
  58.  mu.ch= X
  59.  
  60.  alpha.i= 88
  61.  alpha.d= 89.012
  62.  alpha.ch= X                                                        */
  63.  
  64.  
  65.