#include<iostream.h>
#include<conio.h>
void popo01();
void popo02();
void error();
void main()
{
textbackground(BLUE);
textcolor(GREEN);
clrscr();
popo01();
popo02();
error();
getch();
}
void popo01()
{
int num=2;
int *pnum=&num;
int **ppnum=&pnum;//Error :- "int **ppnum=&&pnum;"
cout<<"\n\n\n\n\t\t\tnum : "<<num;
cout<<"\n\t\t\t*pnum : "<<*pnum;
cout<<"\n\t\t\t**ppnum : "<<**ppnum;
}
void popo02()
{
int num1,num2;
int *pnum1=&num1;
int *pnum2=&num2;
int **ppnum;
ppnum=&pnum1;
cout<<"\n\n\n\n\t\t\tEnter the 1st number : ";cin>>**ppnum;
ppnum=&pnum2;//Overwrite.
cout<<"\t\t\tEnter the 2nd number : ";cin>>**ppnum;
cout<<"\n\t\t\t"<<num1<<" + "<<num2<<" : "<<(*pnum1+*pnum2);
}
void error()
{
int x=7;
//int &y;//Error :- It must be initialized.
int &y=x;
/*"&y" has been initialized once so it can never be reinitialized like this
  int z;
  int &y=z;
*/
}