home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #19 / NN_1992_19.iso / spool / comp / lang / c / 12834 < prev    next >
Encoding:
Text File  |  1992-08-26  |  1.3 KB  |  33 lines

  1. Newsgroups: comp.lang.c
  2. Path: sparky!uunet!decwrl!csus.edu!netcom.com!netapp
  3. From: netapp@netcom.com (Byron Rakitzis)
  4. Subject: Re: Most difficult part of learning C?
  5. Message-ID: <sacngxn.netapp@netcom.com>
  6. Date: Thu, 27 Aug 92 05:45:08 GMT
  7. Organization: Netcom - Online Communication Services  (408 241-9760 guest) 
  8. References: <9208251159.AA04122@ult4> <1992Aug26.124652.9509@alw.nih.gov>
  9. Lines: 22
  10.  
  11. Pointers: Learning the difference between different types of pointers,
  12. and the issue array-pointer confusion.
  13.  
  14. Declaration syntax: declaring arrays of function pointers, for example,
  15. is something I occasionally have to drag out cdecl for to this day.
  16.  
  17. Operator precedence: the precedences are hard to learn, also order of
  18. evaluation of expressions is something that can bite you while learning
  19. C. e.g., here's a hypothetical error a tyro could easily make:
  20.  
  21.     int read100() {
  22.         return ((getchar()-'0')*10) + (getchar()-'0');
  23.     }
  24.  
  25. (and never mind not checking the return value of getchar() for now.)
  26.  
  27. A very confusing example in this vein is arglists: syntactically they
  28. resemble a comma-separated list of expressions, but unlike a comma-
  29. separated list of expressions, left-to-right order of evaluation is
  30. not guaranteed.
  31.  
  32. I guess I should add typedefs, too. They took a while to understand.
  33.