#include struct BankAccount // I define struct BankAccount here for brevity { int ID; float balance; }; int main( int argc, char *argv[] ) { struct BankAccount john, mary, *p ; // p can store a reference to a struct BankAccount var john.balance = 500; mary.balance = 500; printf("j: %f m:%f\n\n", john.balance, mary.balance); /* ----------------------------------------------- Update john.balance using reference variable ----------------------------------------------- */ p = &john; // Now *p ≡ john (*p).balance = (*p).balance + 2000; // Updates john.balance printf("j: %f m:%f\n\n", john.balance, mary.balance); /* ----------------------------------------------- Update mary.balance using reference variable ----------------------------------------------- */ p = &mary; // Now *p ≡ mary (*p).balance = (*p).balance + 9000; // Updates mary.balance printf("j: %f m:%f\n\n", john.balance, mary.balance); }