Originally Posted by DaWei
That's because C doesn't have references like C++. The & is strictly an address-of operator.
Dawei i am using c++ compiler if you don't believe me see this code


int main()
int i =90;
  int *pointer;
  int &reference = i; 
  pointer = &i;  
  return 0;  
       mov     DWORD PTR _i$[ebp], 90			;  int i = 90

	lea	eax, DWORD PTR _i$[ebp]                  ; int &reference = i; 
	mov	DWORD PTR _reference$[ebp], eax

	lea	ecx, DWORD PTR _i$[ebp]                  ; pointer = &i;
	mov	DWORD PTR _pointer$[ebp], ecx
the code of reference is same as code of pointer.