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

  1. /*********************************************************************
  2. *  CH02_05.C       Exemple de sortie du domaine de dΘfinition des    *
  3.                                unsigned int  *
  4. *********************************************************************/
  5.  
  6. #include<stdio.h>     
  7.  
  8. main( void)
  9. {
  10.     unsigned int y0, y1, y2,
  11.     entier_0= 420, entier_1= 160, entier_2= 4;
  12.  
  13.     /* Le suffixe U ou u qualifie une constante du type unsigned int
  14.        nous aurions pu dΘclarer: entier_0= 420u, entier_1= 160U
  15.  
  16.        De mΩme le suffixe L ou l qualifie une constante de type long
  17.        Une constante unsigned long int pourra s'Θcrire 420UL        */
  18.  
  19.     y0= entier_0;               /* y0= 420                          */
  20.     y1= y0* entier_1;           /* y1= 67200                        */
  21.     y2= y1/ entier_2;           /* y2= 16800 en dΘcimal             */
  22.  
  23.     printf(" Le rΘsultat:\t y0= %u\n\t\t"
  24.               " y1= %u\n\t\t"
  25.               " y2= %u", y0, y1, y2);
  26.  
  27. }
  28.  
  29. /*  Le programme nous affiche:
  30.  
  31.  Le rΘsultat:    y0= 420
  32.         y1= 1664         1664= 67200- ( 65535+ 1)
  33.         y2= 416
  34.  
  35.  En fait l'opΘration s'Θcrit:         y2= 440* 160/ 4
  36.  si on change l'ordre des opΘrations:    y2= 440/ 4* 160
  37.  ou si on utilise des parenthΦses:    y2= 440* ( 160/ 4)
  38.  il n'y a plus de dΘbordement                        */