Me pregunto por qué en el siguiente programa sizeof(int)
devuelve un valor diferente de sizeof(int*)
.¿Por qué sizeof (int) es diferente de sizeof (int *)?
Aquí está el pequeño programa:
int main(){
std::cout<<sizeof(int)<<endl;
std::cout<<sizeof(int*)<<endl;
return 0;
}
Y aquí está la salida:
4
8
Hasta ahora recuerdo el tamaño de un puntero entero es 4byte (compilador gcc). ¿Cómo puedo verificar el tamaño correcto de un puntero? ¿Es dependiente de la computadora?
Estoy corriendo Ubuntu 12,04
# lsb_release -a
Distributor ID: Ubuntu
Description: Ubuntu 12.04 LTS
Release: 12.04
Codename: precise
es el tamaño del puntero no es constante (tamaño estándar) de 8 bytes.
64 bit Sistema operativo? – gliderkite
@ ahenderson- ¿Estás seguro de que todos los punteros tienen la garantía de ser del mismo tamaño? – templatetypedef
También agregue la salida de 'uname -a' o' archivo ' –
0xC0000022L