Files correlati : Commento : Aggiunto il preprocessore c++ mcpp per sostituire il compilatore nella compilazione delle maschere.
		
			
				
	
	
		
			34 lines
		
	
	
		
			714 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			714 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /* n_30.c:  Macro calls.    */
 | |
| /*  Note:   Comma separate the arguments of function-like macro call,
 | |
|         but comma between matching inner parenthesis doesn't.  This feature
 | |
|         is tested on so many places in this suite especially on *.c samples
 | |
|         which use assert() macro, that no separete item to test this feature
 | |
|         is provided.    */
 | |
| 
 | |
| #include    "defs.h"
 | |
| 
 | |
| #define FUNC( a, b, c)      a + b + c
 | |
| 
 | |
| main( void)
 | |
| {
 | |
|     int     a = 1, b = 2, c = 3;
 | |
| 
 | |
|     fputs( "started\n", stderr);
 | |
| 
 | |
| /* 30.1:    A macro call crossing lines.    */
 | |
|     assert
 | |
|     (
 | |
|         FUNC
 | |
|         (
 | |
|             a,
 | |
|             b,
 | |
|             c
 | |
|         )
 | |
|         == 6
 | |
|     );
 | |
| 
 | |
|     fputs( "success\n", stderr);
 | |
|     return  0;
 | |
| }
 | |
| 
 |