27 lines
464 B
C
Raw Normal View History

/* n_23.c: ## operator in macro definition. */
#include "defs.h"
#define glue( a, b) a ## b
#define xglue( a, b) glue( a, b)
#define MACRO_0 0
#define MACRO_1 1
main( void)
{
int xy = 1;
fputs( "started\n", stderr);
/* 23.1: */
assert( glue( x, y) == 1);
/* 23.2: Generate a preprocessing number. */
#define EXP 2
assert( xglue( .12e+, EXP) == 12.0);
fputs( "success\n", stderr);
return 0;
}