int main() { List_t* l1 = (List_t*) malloc(sizeof(List_t)); l1->p = (Person_t*) malloc(sizeof(Person_t)); l1->p->id = 111; l1->p->name = "ほげほげ"; l1->next = NULL; List_t* l2 = (List_t*) malloc(sizeof(List_t)); l2->p = (Person_t*) malloc(sizeof(Person_t)); l2->p->id = 222; l2->p->name = "ふがふが"; l2->next = NULL; l1->next = l2; List_t* l3 = (List_t*) malloc(sizeof(List_t)); l3->p = (Person_t*) malloc(sizeof(Person_t)); l3->p->id = 333; l3->p->name = "ほげふが"; l3->next = NULL; l2->next = l3; print_people(l1); free_people(l1); return 0; }
void free_received_turn(received_turn_t * received_turn) { int i; for (i = 0; i < received_turn->num_errors; i++) { free(received_turn->errors[i]); } free(received_turn->errors); free_people(received_turn->people, received_turn->num_people); for (i = 0; i < received_turn->num_rooms; i++) { int j; free(received_turn->rooms[i].room_id); free(received_turn->rooms[i].people_ids); free(received_turn->rooms[i].resources); for (j = 0; j < received_turn->rooms[i].num_connected_rooms; j++) { free(received_turn->rooms[i].connected_rooms[j]); } free(received_turn->rooms[i].connected_rooms); } free(received_turn->rooms); for (i = 0; i < received_turn->num_messages; i++) { free(received_turn->messages[i].action); free(received_turn->messages[i].message); free(received_turn->messages[i].reason); } free(received_turn->messages); for (i = 0; i < received_turn->num_events; i++) { free(received_turn->events[i].room_id); } free(received_turn->events); free(received_turn); }
void free_people(List_t* list) { if (list->next) { free_people(list->next); } free(list->p); free(list); }
void free_initial_received(initial_received_t * received) { int i; for (i = 0; i < received->num_errors; i++) { free(received->errors[i]); } free(received->errors); free(received->team_name); free_people(received->team_members, received->num_team_members); free(received); }