why is my code not working

void update_contact(struct contact *person , char name, int num, char address){
    p = &person;
    strcpy(p->name, name);
    p->phone_number = num;
    strcpy(p->address, address);
}
