dva ukazatele na stejné adrese.

M

m_t_blind

Guest
Mám dva ukazatele, jeden int a jeden char typu:

int * p1;
char * p2;

I do:

p2 = (char *) p1

získat p1 dat v bytech.

Pokud jsou data v (8bit) adresy (P1) = 0x10, (P1 1) = 0x12, (P1 2) = 0x14.

Můžete přečíst tato data v podobě byte později whith p2 ukazatel?

 
To obvykle funguje dobře.

Pamatujte, že char a int mohou mít různé šířky bit na různých systémech.To je důležité, pokud chcete vytvořit přenosné kód.

 
m_t_blind napsal:

Mám dva ukazatele, jeden int a jeden char typu:int * p1;

char * p2;I do:p2 = (char *) p1získat p1 dat v bytech.Pokud jsou data v (8bit) adresy (P1) = 0x10, (P1 1) = 0x12, (P1 2) = 0x14.Můžete přečíst tato data v podobě byte později whith p2 ukazatel?
 
Ano, to bude fungovat dobře, ale starat se o organizace paměti little endian nebo big endian.jde,
Amr.

 

Welcome to EDABoard.com

Sponsor

Back
Top