Vraag : endian

Hoe dit kan blijken m/c kleine/grote endian.

int num = 1 is;
if (* (klusje *) &num == 1)
{
printf („\ nLittle-Endian \ n " );
}
else
{
printf („groot-Endian \ n“);
}

what precies deze lijn doet?
if (* (klusje *) &num == 1)

Antwoord : endian

Hallo learningunix,

de lijn controleert als de uiterst linkse byte van „num 1““ is „.

„&num“ is een wijzer aan het geheugenadres waar de eerste byte van „num“ verblijft. „(Char*)“ giet deze wijzer „&num“ (die een wijzer aan int.) is aan een te verkolen wijzer. Aangezien het klusje een één het type van bytegegevens dat toegang tot „is wijzer de te verkolen“ met „*“ heeft toegang tot de eerste byte van int. In endian weinig moet deze byte „1“ voor en „int.“ zijn dat „1“ is - in grote endian zou de eerste byte „0“ zijn aangezien de minste significante byte het meest net één… is

Hoop die hulp,

ZOPPO

Andere oplossingen  
 
programming4us programming4us