Hoe krijg ik deze string:
char Str[4]={0x00,0x40,0x12,0x60};
geconverteerd naar een integer value.
Str bevat het adres van een functie.
Nu doe ik het zo:
int Add;
Add=(int)(Str[0]*16777216+Str[1]*65536+Str[2]*256+Str[3]);
pfunc=(void(*D(...)Add;
Dit gaat alleen niet met alle adressen goed. Soms is het adres goed, maar soms is het te derde byte te groot of te klein.
Weet iemand hoe je dit wel goed kunt doen?
char Str[4]={0x00,0x40,0x12,0x60};
geconverteerd naar een integer value.
Str bevat het adres van een functie.
Nu doe ik het zo:
int Add;
Add=(int)(Str[0]*16777216+Str[1]*65536+Str[2]*256+Str[3]);
pfunc=(void(*D(...)Add;
Dit gaat alleen niet met alle adressen goed. Soms is het adres goed, maar soms is het te derde byte te groot of te klein.
Weet iemand hoe je dit wel goed kunt doen?