1. From a symptom perspective: A pointer can change the value it points to at runtime, and the reference will not change once it is bound to an object.
2. From the memory allocation perspective:ProgramAllocate memory areas for pointer variables, but do not allocate memory areas for references
3. In terms of compilation, the program adds pointers and references to the symbol table during compilation. the symbol table records the variable name and the address corresponding to the variable.The address value corresponding to the pointer variable in the symbol table is the address value of the pointer variable.,The address value corresponding to the referenced symbol table is the address value of the referenced object.. The symbol table will not be changed after it is generated, so the pointer can change the object to which it points (the value in the pointer variable can be changed), but the referenced object cannot be changed.