Why can't pointer fit variable of different type, even though sizeof is same?
问题 Why the sizeof any pointer is 4 or 8 bytes, but it cannot fit any different variable? I get error while trying to assign a double pointer an int pointer value. int *int_ptr{nullptr}; float *float_ptr{nullptr}; double *double_ptr{nullptr}; long double *long_double_ptr{nullptr}; string *string_ptr{nullptr}; vector<int> *vector_ptr{nullptr}; cout << "sizeof int pointer is " << sizeof int_ptr; //8 or 4 cout << "sizeof float pointer is " << sizeof float_ptr; //8 or 4 cout << "sizeof double pointer