// a point in 2 dimensions // typedef struct { double x, y; } Point; // functions from point.c // void print(const char msg[], Point p); double distance( Point p, Point q); // a point in 2 dimensions // #include #include // #include "point.h" void print(const char msg[], Point p) { printf( "%s: (%g,%g)\n", msg, p.x, p.y); } double distance( Point p, Point q) { double dx = p.x - q.x, dy = p.y - q.y; return sqrt(dx*dx+dy*dy); } // 2D point example // #include // #include "point.h" int main( void) { Point p = { 1, 2 }, q = { 3, 4}; print("p",p); print("q",q); printf( "distance = %g\n", distance(p,q) ); }