Помощ: какво означава този код в

A

alvarorahul

Guest
Какво е значението на дебелото черво при следния кодstruct ABC
(
Int bit1: 1;
Int bit3: 4;
Int bit4: 4;
) XYZ (1,2,2);

Основните ()
(
/ / код
)

 
struct ABC
(
Int bit1: 1;
Int bit3: 4;
Int bit4: 4;
) XYZ (1,2,2);

Те са опаковани малко области.Броят след дебелото черво е дължината.Съставител ще опаковката на тези в цяло число, ако е възможно.Обикновено това е необходимо само, ако паметта е на премията.Обикновено тя е най-добре да се използва грозен Int вместо Int така че няма бита се добавят за този знак.

Така че в XYZ променлива,
xyz.bit1 = 1 и е малко дълго 1
xyz.bit3 = 2 и 4 бита дълго
xyz.bit4 = 2 и 4 бита дълго
Всички по-горе стойности ще бъдат автоматично се конвертират в вътр.
Аз не знам какво се случи с bit2.Но това би могло да бъде настроен на 7 малко променлива без увеличаване на използваната памет.

Използвайте малко области с повишено внимание, тъй като те не са много преносим между платформите (int16 срещу 1in32).

Надявам се това да помогне

 
newelltech написа:Аз не знам какво се случи с bit2.
Но това би могло да бъде настроен на 7 малко променлива без увеличаване на използваната памет.

 
alvarorahul написа:newelltech написа:Аз не знам какво се случи с bit2.
Но това би могло да бъде настроен на 7 малко променлива без увеличаване на използваната памет.

 
Определението на "Int" е платформено зависим, т.е. тя зависи от компилатор, който използвате, тъй като съставителите са свободни да определят размера на вътр.
Моят обяснение предполага, че е цяло число е 16 бита и чрез добавяне на bit2 от 7 бита дълго, общият бита ще бъдат използвани 16

bit1 дължина = 1
bit2 дължина = 7
bit3 дължина = 4
bit4 дължина = 4
----------------
общо = 16 бита = едно цяло число

Ако пишете код за персонален компютър, повече от вероятно си е 32 битов компилатор цели числа.Някои микропроцесор съставителите са 16-битови цели числа.Не че някога са използвали един компилатор на Int 8 бита ", която поддържа малко области.

Дали това го изясниш?

 

Welcome to EDABoard.com

Sponsor

Back
Top