home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #26 / NN_1992_26.iso / spool / comp / lang / c / 16312 < prev    next >
Encoding:
Internet Message Format  |  1992-11-10  |  2.2 KB

  1. Path: sparky!uunet!mcsun!chsun!zurich!gegu
  2. From: gegu@zurich.spectrospin.ch (Gerry Gucher)
  3. Newsgroups: comp.lang.c
  4. Subject: Re: How to use 'return' in c?
  5. Summary: boolean != int
  6. Message-ID: <196@zurich.spectrospin.ch>
  7. Date: 9 Nov 92 20:12:24 GMT
  8. References: <1992Oct29.025437.9289@nuscc.nus.sg> <1992Nov2.203701.162@ipact.com> <1992Nov7.122126.24409@druid.uucp>
  9. Organization: Spectrospin AG, Fallanden Switzerland
  10. Lines: 44
  11.  
  12. In article <1992Nov7.122126.24409@druid.uucp>, darcy@druid.uucp (D'Arcy J.M. Cain) writes:
  13. > allebrandi@ipact.com writes:
  14. > >The best thing to do is to use manifest constants to implicitly document
  15. > >the value you are returning. For example, return TRUE or FALSE not 1 or
  16. > >0 for a boolean function return.
  17.  
  18. > Whenever I see TRUE and FALSE in code I am maintaining I remove the
  19. > #defines.  If they are defined, they should never be anything but
  20. > TRUE = 1 and FALSE = 0.  Anything else is confusing and misleading.
  21. > Given this why force the maintainer to go searching for the definitions
  22. > to make sure that they are what they should never be anything but?
  23. > This isn't as bad as #defining SEVEN as 7 but it is in the same category
  24. > I think.
  25.  
  26.  
  27. Sorry, I think your thinking is wrong.
  28.  
  29. TRUE and FALSE are the values for a boolean type. A boolean is a
  30. logical concept that can yield TRUE or FALSE.
  31.  
  32. An integer on the other hand is a numerical value
  33. that ranges (on my machine) from 2^31 -1 down to -2^31 which 
  34. yields 2^32 values.
  35.  
  36. Note quite the same, is it ?
  37.  
  38. Even if these stupid machines called computer (and C compilers) 
  39. *represent* them identically, they are still not the same thing.
  40.  
  41. #define SEVEN 7        /* is of course bull..it as well as is */
  42. #define FORMFEED  '\f' 
  43.  
  44. Gerry
  45.  
  46.  
  47. +------------------------------------------------------------------+
  48. | Gerry Gucher                             gegu@spectrospin.ch       |
  49. | Spectrospin AG,  Industriestr 26,  8117  Faellanden Switzerland  | 
  50. +------------------------------------------------------------------+
  51. | A program that  returns the  wrong | There is nothing wrong with |
  52. | result twice as fast is infinitely | making  mistakes,  but make |
  53. | slower.               - H. Spencer | new ones.           - D.Sim |    
  54. +------------------------------------------------------------------+
  55.