-
Data: 2015-12-03 10:31:55
Temat: Re: Pakowanie struktur
Od: JDX <j...@o...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 2015-12-02 18:21, M.M. wrote:
> On Wednesday, December 2, 2015 at 5:02:15 PM UTC+1, Borneq wrote:
>> Jest jeszcze ilość bitów po dwukropku jak :8, :16 czy :32 - kiedy się
>> stosuje?
> Generalnie wtedy kiedy chcemy oszczędzać pamięć i przechowywać specyficzne
> wartości, np. trzy liczby, każda zajmująca max 10 bitów. Bez tej sztuczki
> potrzeba trzech typów 16-bitowych, czyli razem 48 bitów. Z tą sztuczką 30
> bitów, które kompilator wyrówna do 32 - mamy oszczędność 16 bitów.
Jesteś pewien, że wyrównywanie odbywa się na poziomie bitów a nie
bajtów? Bo zgodnie z tym co napisałeś, poniższy programik na i386
powinien wyświetlić "2 6 4", a nie wyświetla.
---------------------- Tnij tutaj --------------------------------
#include <stdio.h>
typedef struct {
short int a;
short int b;
short int c;
} my_struct;
typedef struct {
short int a:10;
short int b:10;
short int c:10;
} my_fancy_struct;
int main(int argc, char *argv[])
{
printf("%d\t%d\t%d\n", sizeof(short int), sizeof(my_struct),
sizeof(my_fancy_struct));
return 0;
}
---------------------- Tnij tutaj --------------------------------
Wynik:
D:\WorkDir>gcc --version
gcc (i686-win32-sjlj-rev0, Built by MinGW-W64 project) 5.2.0
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
D:\WorkDir>gcc -O3 -s -o struct_test.exe struct_test.c
D:\WorkDir>struct_test
2 6 6
D:\WorkDir>
Następne wpisy z tego wątku
- 03.12.15 10:59 Adam Klobukowski
- 03.12.15 12:55 M.M.
- 03.12.15 13:09 Tomasz Kaczanowski
- 03.12.15 14:08 M.M.
- 03.12.15 14:33 Tomasz Kaczanowski
- 03.12.15 15:00 M.M.
- 03.12.15 15:05 Tomasz Kaczanowski
- 03.12.15 15:20 Maciej Sobczak
- 03.12.15 16:08 M.M.
- 03.12.15 16:19 M.M.
- 03.12.15 16:21 witek
- 03.12.15 16:23 M.M.
- 03.12.15 17:29 Maciej Sobczak
- 03.12.15 17:45 witek
- 03.12.15 17:56 M.M.
Najnowsze wątki z tej grupy
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
Najnowsze wątki
- 2025-07-12 Warszawa => PC Hardware Expert / Specjalista PC <=
- 2025-07-12 Warszawa => Account Manager - Usługi rekrutacyjne <=
- 2025-07-12 Warszawa => Administrator IT <=
- 2025-07-12 Warszawa => IT Administrator <=
- 2025-07-12 Warszawa => Asystent/tka ds. Administracji <=
- 2025-07-12 Warszawa => Specjalista/stka ds. Organizacji <=
- 2025-07-12 Warszawa => MENA New Business Manager <=
- 2025-07-12 Gdynia => Controlling systems Consultant <=
- 2025-07-12 Warszawa => Developer Microsoft Dynamics 365 Finance & Operations (D36
- 2025-07-12 Warszawa => Programista Microsoft Dynamics 365 Finance & Operations (D
- 2025-07-12 Warszawa => Dyrektor IT <=
- 2025-07-12 Warszawa => IT Director <=
- 2025-07-12 Czy wypowiedź Kaczyńskiego o Braunie jest skarżalna? ["działa z OBCEJ inspiracji"]
- 2025-07-11 Rejestrator temperatur - termopara, siec
- 2025-07-11 DPD, przeniesienie numerów z a2mobile i z Orange