return_pointer.c
#include <stdio.h>
#include <stdlib.h>
long *IncomePlus(const long *pPay);
int main()
{
long your_pay = 30000L;
long *pold_pay = &your_pay;
long *pnew_pay = NULL;
pnew_pay = IncomePlus(pold_pay);
printf("Old pay = $%ld\n", *pold_pay);
printf("New pay = $%ld\n", *pnew_pay);
free(pnew_pay);
return 0;
}
long *IncomePlus(const long *pPay)
{
long *pNewPay = (long *)malloc(sizeof(long));
*pNewPay = *pPay + 10000;
return pNewPay;
}