Mercurial > hg > CbC > old > device
comparison test/inline.c @ 459:9fc266d4010f
*** empty log message ***
author | kono |
---|---|
date | Thu, 02 Dec 2004 02:50:45 +0900 |
parents | |
children | 2859bb9d5fb3 |
comparison
equal
deleted
inserted
replaced
458:0bc9f3273aa7 | 459:9fc266d4010f |
---|---|
1 const int a = 5,b = -3; | |
2 int kkkk = 333; | |
3 static const int as = 5,bs = -3; | |
4 const char hoo[] = "test"; | |
5 static const char haa[] = "test"; | |
6 static inline const int f(int k); | |
7 | |
8 extern int printf(char *,...); | |
9 | |
10 static inline const int f(int k) | |
11 { | |
12 return k+1; | |
13 } | |
14 | |
15 inline int in1(int i,int j) | |
16 { | |
17 if (i>j) return j; | |
18 else return i; | |
19 } | |
20 | |
21 static | |
22 inline int ins(int i,int j) | |
23 { | |
24 printf("#0023:%d %d\n",i,j); | |
25 if (f(i)>j) return j; | |
26 else return i; | |
27 } | |
28 | |
29 static | |
30 inline int ins1(int i,int j) | |
31 { | |
32 printf("#0023:%d %d\n",i,j); | |
33 if (f(i)>j) return j; | |
34 else return i; | |
35 } | |
36 | |
37 inline int in2(int p,int i,int j) | |
38 { | |
39 int k = 0,m; | |
40 do { | |
41 k += 3; | |
42 } while ( k < j); | |
43 printf("#0034: %d do %d\n",p,k); | |
44 | |
45 while (k < j) { | |
46 k -= 3; | |
47 } while ( k < j); | |
48 printf("#0039: %d while %d\n",p,k); | |
49 | |
50 m = 0; | |
51 for(k=0;k<j;k++) { | |
52 m += k; | |
53 } | |
54 printf("#0045: %d for %d\n",p,m); | |
55 | |
56 switch(i) { | |
57 case 1: k = 1; | |
58 break; | |
59 case 2: k = 2; | |
60 break; | |
61 case 3: k = 3; | |
62 break; | |
63 case 4: k = 4; | |
64 break; | |
65 default: k = 5; | |
66 } | |
67 printf("#0058: %d switch %d\n",p,k); | |
68 | |
69 for(k=0;k<j;k++) { | |
70 i += k; | |
71 if (k<3) continue; | |
72 } | |
73 printf("#0064: %d for %d\n",p,i); | |
74 goto hoge; | |
75 hage: | |
76 goto hage; | |
77 hoge: | |
78 return 0; | |
79 | |
80 } | |
81 | |
82 int (*fnp)(int i,int j); | |
83 | |
84 int (*fnp3)(int i,int j,int k); | |
85 | |
86 void | |
87 a0(int k,int j) | |
88 { | |
89 int k1,j1; | |
90 const int v=3,x=6; | |
91 // a = 10; | |
92 | |
93 k1 = in1(a,b); | |
94 printf("#0081:%d %d %d\n",a,b,k1); | |
95 j1 = in1(k,j-6)+f(k1); | |
96 printf("#0083:%d %d %s\n",k1,j1,hoo); | |
97 k1 = &v-&x>0? &v-&x : &x-&v; | |
98 printf("#0085:v-x: %d\n",k1); | |
99 | |
100 k1 = ins(a,b); | |
101 j1 = ins(k,j-6)+f(k1); | |
102 printf("#0089:%d %d %s\n",k1,j1,haa); | |
103 | |
104 k1 = ins(as,bs); | |
105 j1 = ins(k,j-6)+f(k1); | |
106 printf("#0093:%d %d %s\n",k1,j1,haa); | |
107 | |
108 k1 = ins(v,x); | |
109 j1 = ins(k,j-6)+f(v); | |
110 printf("#0097:%d %d %s\n",k1,j1,haa); | |
111 | |
112 k1 = fnp(v,x); | |
113 j1 = ins1(k,j-6)+f(v); | |
114 printf("#0097:%d %d %s\n",k1,j1,haa); | |
115 } | |
116 | |
117 void | |
118 a1(int k,int j) | |
119 { | |
120 in2(1,k,j); | |
121 in2(2,3,10); | |
122 in2(3,k,10); | |
123 in2(4,2,j); | |
124 in2(5,2,1); | |
125 in2(6,0,2); | |
126 fnp3(6,0,2); | |
127 } | |
128 | |
129 int | |
130 main() | |
131 { | |
132 fnp = ins1; | |
133 a0(5,6); | |
134 a0(-9,6); | |
135 fnp3 = in2; | |
136 a1(9,10); | |
137 return 0; | |
138 } | |
139 |