following code:
int main(){
  int a;
  int b;
  int c=0;
  int *p;
  p=&a;
  *p = 10;
  *(p+1) = 20;
  *(p+2) = 30;
  cout << a << " " << b << " " << c << endl;
 
  return 0;
}
gives the output:
10 30 20
explanation ? if c is not initialized (int a,b,c;) results are expected: 10 20 30
 
     
     
    