Test Foro de elhacker.net SMF 2.1

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:


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 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 (cpp) [Seleccionar]
#include <iostream>
using namespace std;
int main() {
  char vocal = 'a';
  char *puntero = &vocal;
  printf("%p\n", puntero);  // %p formato puntero
  printf("%c\n", *puntero); // %c formato caracter (char)
}


Código (dos) [Seleccionar]
C:\Users\EdSon\Desktop>g++ prb.cpp -o prb.exe && prb.exe
0028FF2B
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
Cita de: EdePC en 29 Diciembre 2018, 00:36 AM
Saludos,

- Mira lo siguiente:

Código (cpp) [Seleccionar]
#include <iostream>
using namespace std;
int main() {
  char vocal = 'a';
  char *puntero = &vocal;
  printf("%p\n", puntero);  // %p formato puntero
  printf("%c\n", *puntero); // %c formato caracter (char)
}


Código (dos) [Seleccionar]
C:\Users\EdSon\Desktop>g++ prb.cpp -o prb.exe && prb.exe
0028FF2B
a


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