Cita de: ThePinkPanther en 5 Octubre 2014, 20:04 PMCódigo (c) [Seleccionar]
//Intento 1: Al parecer no me da el valor que quiero
void *ptr;
unsigned char temp;
temp = (unsigned char *) &ptr;
hola, y si pruebas así..Código (c) [Seleccionar]
void *ptr;
unsigned char *temp;
temp = (unsigned char *) ptr;
Sobre el intento 2, yo hice algo así y me funciono :Código (c) [Seleccionar]
#include <stdio.h>
#include <stdlib.h>
int main()
{
int x=5;
void *ptr;
ptr=&x;
unsigned char temp;
temp = *(unsigned char*)ptr;
printf("Apunte a :%c \n",temp);
}
Gracias por ofrecerme tu ayuda, pero lo probé, y en mi caso particular no funciono. La funcion es la siguiente: (La postearé para que si alguna otra persona quiere ayudarme):
Código (c) [Seleccionar]
int callback(unsigned int event, void *ptr, void *ptr_additional, void *ptr_file){
unsigned char temp;
switch (event){
case event_trash_byte_found_in_code:
//Aqui hago lo que me dijiste
temp = (unsigned char *) ptr;
show_prefixe((FILE *) ptr_file, temp);
fprintf((FILE *) ptr_file, "(reported by callback!!)\n");
break;
case event_instruction_decoded:
///Aqui hago lo que me dijiste
temp = (unsigned char *) ptr_additional;
fprintf((FILE *) ptr_file, "A instruction found!! 0x%x\n", temp);
switch(temp){
case general_opcode_push:
fprintf((FILE *) ptr_file, "push exx \n");
break;
case general_opcode_pop:
fprintf((FILE *) ptr_file, "pop exx \n");
break;
case general_opcode_inc:
fprintf((FILE *) ptr_file, "inc exx \n");
break;
case general_opcode_dec:
fprintf((FILE *) ptr_file, "dec exx \n");
break;
}
break;
default:
break;
}
}
Básicamente es una funcion, que dependiendo según sea un caso u otro, toma una decision. Show_prefixe recibe el byte temp, y lo imprime en un fichero. Creo que sería algo demasiado tedioso leer todo mi codigo (el cual es bastante extenso)
Bueno, gracias por tu ayuda. Lo intentaré nuevamente a haber si fue que seguí mal algun paso de los que me has dado.