Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: digimikeh en 28 Diciembre 2018, 23:31 pm



Título: Se puede acceder a la memoria de una variable tipo char ?
Publicado por: digimikeh en 28 Diciembre 2018, 23:31 pm
Hola..

cuando yo escribo:

Código:
char vocal = 'a';
cout << &vocal;

Esto me sigue arrojando el valor y no la dirección...


Título: Re: Se puede acceder a la memoria de una variable tipo char ?
Publicado por: MAFUS en 29 Diciembre 2018, 00:13 am
Intenta con
Código:
cout << static_cast<void*>(&vocal);


Título: Re: Se puede acceder a la memoria de una variable tipo char ?
Publicado por: digimikeh en 29 Diciembre 2018, 00:25 am
Ahi si mostró..   ;-)

que significa static_cast y por qué lleva void * ?
gracias..


Título: Re: Se puede acceder a la memoria de una variable tipo char ?
Publicado por: EdePC en 29 Diciembre 2018, 00:36 am
Saludos,

- Mira lo siguiente:

Código
  1. #include <iostream>
  2. using namespace std;
  3. int main() {
  4.  char vocal = 'a';
  5.  char *puntero = &vocal;
  6.  printf("%p\n", puntero);  // %p formato puntero
  7.  printf("%c\n", *puntero); // %c formato caracter (char)
  8. }

Código
  1. C:\Users\EdSon\Desktop>g++ prb.cpp -o prb.exe && prb.exe
  2. 0028FF2B
  3. a


Título: Re: Se puede acceder a la memoria de una variable tipo char ?
Publicado por: digimikeh en 29 Diciembre 2018, 01:09 am
Saludos,

- Mira lo siguiente:

Código
  1. #include <iostream>
  2. using namespace std;
  3. int main() {
  4.  char vocal = 'a';
  5.  char *puntero = &vocal;
  6.  printf("%p\n", puntero);  // %p formato puntero
  7.  printf("%c\n", *puntero); // %c formato caracter (char)
  8. }

Código
  1. C:\Users\EdSon\Desktop>g++ prb.cpp -o prb.exe && prb.exe
  2. 0028FF2B
  3. a

También funciona, ese es el formato C.. pero funciona.. gracias.