home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / comp / lang / c / 11524 < prev    next >
Encoding:
Internet Message Format  |  1992-07-23  |  1.1 KB

  1. Path: sparky!uunet!mcsun!uknet!tlg
  2. From: tlg@uknet.ac.uk (Tim.Goodwin)
  3. Newsgroups: comp.lang.c
  4. Subject: Re: Concatenation of two macros?
  5. Message-ID: <1206@uknet.ac.uk>
  6. Date: 23 Jul 92 17:34:12 GMT
  7. References: <1FE7B81211DF800725@ursula.lucas.lu.se>
  8. Organization: UKnet
  9. Lines: 29
  10.  
  11. In article <1FE7B81211DF800725@ursula.lucas.lu.se> KOSU_MATSB@ROUTH.KOSUFY.LU.SE writes:
  12. >
  13. >    Concatenation of two macros. Is it possible?
  14. >
  15. >    If i have the following two definitions:
  16. >        #define A pre
  17. >        #define B post
  18. >    And want to "#define C" to be  "prepost" BUT as an 
  19. >    expression of A and B! How do i do it?
  20. >    #define C (expression of A and B to yield prepost)
  21.  
  22. This is alluded to in the FAQ (question 5.2).  You need the token
  23. pasting operator ##.
  24.  
  25.     #define A pre
  26.     #define B post
  27.     #define C A ## B
  28.  
  29. This is highly unlikely to work on a pre-ANSI compiler: if you're stuck
  30. with such a beast you *may* be able to use
  31.  
  32.     #define C A/**/B
  33.  
  34. instead.
  35.  
  36. Tim.
  37. -- 
  38. The GNU is in fact the legendary and much-berated | ; who am i
  39. feeping creature - Malcolm Wallace.               | uknet.ac.uk!tlg
  40.