#include "Foo.h" struct _FOO { int a ; int b ; int c ; } ; FOO CreateFoo( void ) { FOO foo ; foo = (FOO) malloc( sizeof(struct _FOO) ) ; if ( foo ) { foo->a = foo->b = foo->c = 0 ; } return foo ; } void PrintFoo( FOO foo ) { printf("%d %d %d\n", foo->a, foo->b, foo->c ) ; } void FreeFoo( FOO foo ) { free( foo ) ; } FOO_ENUM UpdateFoo ( FOO foo, int a, int b, int c ) { foo->a = a ; foo->b = a + b ; foo->c = a + b + c ; return FooEnumOk ; }