annotate struct-ptr-arg.c @ 5:709cdf828033

update tags
author convert-repo
date Mon, 08 Dec 2008 19:26:11 +0000
parents e59ebf6fe2b0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
1 extern int printf(char*,...);
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
2 struct interface {
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
3 int i;
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
4 int num;
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
5 char **arg;
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
6 code (*ret)();
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
7 void *env;
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
8 };
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
9 void
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
10 huga(struct interface *intf)
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
11 {
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
12 printf("%x\n", (unsigned long)intf);
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
13 }
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
14 int
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
15 main()
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
16 {
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
17 struct interface a;
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
18 struct interface *b=&a;
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
19 printf("%x\n", (unsigned long)b);
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
20 b->i=1;
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
21 b->num=2;
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
22 b->arg=(void*)3;
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
23 b->ret=return;
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
24 b->env=environment;
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
25 huga(b);
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
26 return(0);
e59ebf6fe2b0 Initial revision
kinjo
parents:
diff changeset
27 }