Mercurial > hg > CbC > old > device
view test/macro.c @ 585:a5b902b20300 ia32-no-rname
ia32 reconfigure end (correct?)
author | kono |
---|---|
date | Wed, 18 Jan 2006 12:26:48 +0900 |
parents | 492f06738550 |
children | 0497fa2e2414 |
line wrap: on
line source
int printf(const char *format, ...); int heap[100]; #define car(e) (heap[(int)(e)]) #define cadr(e) (heap[((int)(e))+1]) #define TEST int i; TEST char *a = "test" "test"; #define TEST0 33 #define TEST111 TEST0 #define c(a,b) g(a+1,b+1) #define g(a,b) printf("#0018:%d %d\n",a+1,b+1); #define d(a,b) cadr(b)+3 /* #define stdio stdio #define f(a,b) aho+a+b f (a,b) */ // name concateneation #define name(a,b) name_##b(a) #define names(a,b) name_ ## b(a) #define name_hoge(c) (c+a) int main() { int a,b,e; b = heap[TEST111]; d(a,b); a =1; b = 3; #ifndef a c(a, b); /* 3,5 expected */ #endif e=50; heap[51]=3; heap[3]=4; /* 5,4 expected */ #if 0 g(car(cadr(e)),cadr(e)); #endif #if 0 printf("#0054:1\n"); #elif (1) printf("#0056:2\n"); #elif (2) printf("#0058:3\n"); #else printf("#0060:4\n"); #endif #if 0 printf("#0063:1\n"); #elif (0) printf("#0065:2\n"); #elif (0) printf("#0067:3\n"); #else printf("#0069:4\n"); #endif printf("#0071:%d\n",name(3,hoge)); printf("#0072:%d\n",names(3,hoge)); return 0; } #if 0 #endif /* whoeh wohefwiehfoi */ void longlong(int i,int j) { // long long i,j; if (i>j) main(); }