comparison CbC-examples/test_cs.c @ 16:4c6926a2b9bc

examples.
author kent <kent@cr.ie.u-ryukyu.ac.jp>
date Thu, 24 Sep 2009 12:51:25 +0900
parents
children 5d30d517ebed
comparison
equal deleted inserted replaced
15:11a6cbe2d14c 16:4c6926a2b9bc
1 //#include<stdio.h>
2 //#include<stdlib.h>
3
4 __code cs_exit(int , double , char );
5 __code cs1(int, int, int, int);
6 __code cs2(double, double, int, double);
7 void test_goto(void);
8
9 int main(int argc, char **argv){
10 printf("main start\n");
11 //goto cs2(2.22, 3.33, 4, 5.55);
12 test_goto();
13 return 0;
14 }
15
16 void test_goto(){
17 goto cs1(10, 20, 30, 40);
18 }
19
20 __code cs1(int a, int b, int c, int d){
21 printf("%4d, %4d, %4d, %4d\n", a, b, c, d);
22 a += 40, b += 40, c += 40, d += 40;
23 goto cs2((double)a, (double)b, c, (double)d);
24 }
25
26 __code cs2(double a, double b, int c, double d){
27 printf("%4d, %4d, %4d, %4d\n", (int)a, (int)b, (int)c, (int)d);
28 a += 40, b += 40, c += 40, d += 40;
29 goto cs_exit((int)a, b, (char)c);
30 }
31
32 __code cs_exit(int a, double b, char c){
33 printf("%4d, %4d, %4d\n", (int)a, (int)b, (int)c);
34 printf("cs_exit was called!\n");
35 exit(0);
36 }
37
38
39 void caller(int a, double b){
40 cs2(b,20.0,a, 40.4);
41 cs1(10,20,30, 40);
42 }
43