Skip to content

Instantly share code, notes, and snippets.

@jasongorman
Created March 26, 2019 08:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jasongorman/fe45bc7c29d5b269c74e73a466c5341f to your computer and use it in GitHub Desktop.
Save jasongorman/fe45bc7c29d5b269c74e73a466c5341f to your computer and use it in GitHub Desktop.
struct Dimensions {
float width;
float length;
};
Room* new_rectangular_room(float width, float length){
Dimensions* dimensions = malloc(sizeof(Dimensions));
Room* room = malloc(sizeof(Room));
dimensions->width = width;
dimensions->length = length;
room->dimensions = dimensions;
room->area = &rectangular_area;
return room;
}
float rectangular_area(struct Room *room) {
Dimensions *dimensions = room->dimensions;
return dimensions->length * dimensions->width;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment