annotate CbC-examples/test_para3.c @ 150:26042f4007d5 current

fix examples
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sat, 23 May 2020 07:51:47 +0900
parents 4c6926a2b9bc
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
16
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 #include<stdio.h>
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 #include<stdlib.h>
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
3
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
4 struct abc {
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
5 int a;
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
6 double b;
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 char c;
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
8 double *d;
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
9 };
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
10
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
11 struct def {
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
12 int d;
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
13 struct abc e;
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
14 struct abc *f;
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
15 };
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
16
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
17 void print_abc(struct abc a){
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
18 printf("\tstruct abc:\n");
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
19 printf("\ta=%d, b=%lf, c=%d, d=%p\n", a.a, a.b, a.c, a.d);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
20 }
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
21 void print_def(struct def b){
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
22 printf("\tstruct def:\n");
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
23 printf("\td=%d, f=%p\n", b.d, b.f);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
24 print_abc(b.e);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
25 }
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
26
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
27 __code cs_exit(int a){
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
28 printf("cs_exit : a=%d.\n", a);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
29 exit(a);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
30 }
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
31
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
32 __code cs0(struct abc a, struct def b, int c){
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
33 printf("cs0 :\n");
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
34 printf("c=%d\n", c);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
35 print_abc(a);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
36 print_def(b);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
37 goto cs_exit( c*a.a+b.e.c );
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
38 }
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
39
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
40
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
41 __code cs_goto(int c, struct abc a, struct def b){
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
42 printf("cs_goto :\n");
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
43 printf("c=%d\n", c);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
44 print_abc(a);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
45 print_def(b);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
46 goto cs0(a, b, c);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
47 }
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
48
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
49 int function(){
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
50 struct abc A;
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
51 struct def B;
150
26042f4007d5 fix examples
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
52 A.a = 10, A.b = 20.02, A.c = '\0', A.d = (void*)0xad;
26042f4007d5 fix examples
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
53 B.d = 30, B.f = (void*)0xbf;
26042f4007d5 fix examples
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
54 B.e.a = 50, B.e.b = 60.06, B.e.c = '\1', B.e.d = (void*)0xed;
16
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
55
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
56 printf("function :\n");
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
57 print_abc(A);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
58 print_def(B);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
59 //printf("20*%d + 30*%d + 40*%d + 50*%d =\n", a, b, c, d);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
60 goto cs_goto(100, A, B);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
61 return 0;
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
62 }
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
63
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
64 int main(int argc, char **argv){
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
65 struct abc A;
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
66 struct def B;
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
67 //int a=10, b=20, c=30, d=40, e=50, f=60, g=70;
150
26042f4007d5 fix examples
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
68 A.a = 10, A.b = 20.02, A.c = '\0', A.d = (void*)0xad;
26042f4007d5 fix examples
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
69 B.d = 30, B.f = (void*)0xbf;
26042f4007d5 fix examples
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
70 B.e.a = 50, B.e.b = 60.06, B.e.c = '\1', B.e.d = (void*)0xed;
16
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
71
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
72 /*
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
73 printf("main :\n");
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
74 print_abc(A);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
75 print_def(B);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
76 //printf("20*%d + 30*%d + 40*%d + 50*%d =\n", a, b, c, d);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
77 goto cs_goto(100, A, B);
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
78 */
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
79 function();
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
80 return 0;
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
81 }
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
82
4c6926a2b9bc examples.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
83