Является ли размер указателя таким же, как и тип, на который он указывает, или указатели всегда имеют фиксированный размер? Например ...
int x = 10;
int * xPtr = &x;
char y = 'a';
char * yPtr = &y;
std::cout << sizeof(x) << "\n";
std::cout << sizeof(xPtr) << "\n";
std::cout << sizeof(y) << "\n";
std::cout << sizeof(yPtr) << "\n";
Каким будет результат? Будет ли sizeof (xPtr)
возвращать 4, а sizeof (yPtr)
возвращать 1, или 2 указателя действительно возвращают одинаковый размер? Причина, по которой я спрашиваю об этом, состоит в том, что указатели хранят адрес памяти, а не значения соответствующих им сохраненных адресов.