Dirección de puntero extraño para miembro de datos de Struct individual
Observo algún comportamiento extraño hoy, el código es el siguiente:
El código :#include <iostream>
struct text
{
char c;
};
int main(void)
{
text experim = {'b'};
char * Cptr = &(experim.c);
std::cout << "The Value \t: " << *Cptr << std::endl ;
std::cout << "The Address \t: " << Cptr << std::endl ; //Print weird stuff
std::cout << "\n\n";
*Cptr = 'z'; //Attempt to change the value
std::cout << "The New Value \t: " << *Cptr <<std::endl ;
std::cout << "The Address \t: " << Cptr << std::endl ; //Weird address again
return 0;
}
La pregunta :1.) La única pregunta que tengo es por quécout theAddress
¿Por el código anterior saldría algún valor extraño?2.) ¿Por qué todavía puedo cambiar el valor del miembro?c
¿Dereferenncing el puntero que tiene dirección extraña?
Gracias.