Wpis z mikrobloga

@Veuch: Właśnie studiuję ;d, musze to najpierw na binarke zamienić? Żeby był format 0000 0000 0000 0000 a potem na hex?
  • Odpowiedz
@RaVo: Z góry zaznaczę, że jestem noobem, ale pamiętam swoje zabawy z konwersjami z decimal to hexagonal. Masz, może ci trochę rozjaśni:

int zmienna = 1234;
cout << "zmienna w dziesiatkowym\t\t" << zmienna << endl;
cout << "zmienna w szesnastkowym\t\t" << hex << zmienna <<
  • Odpowiedz
@psychob: Jeśli znasz endian - to nie jest UB! Wielkość floata masz stałą więc gdzie widzisz tam UB? A jeśli nie znasz endiana, kolejność będzie najwyżej inna!
  • Odpowiedz
@psychob: Skąd takie bzdury>? Przeczytał co to jest Unia? Za Stroustrupem: "Unia to struktura, której wszystkie składowe są alokowane pod jednym adresem", chyba, że twierdzisz, że Stroustrup się myli?
  • Odpowiedz
Skąd takie bzdury

@Kaczus2B: Ze standardu c++, polecam przeczytać zanim będziesz traktować wszystkich z góry.

9.5 Unions [class.union]


In a union, at most one of the non-static data members can be active at any time, that is, the value of at most one of the non-static data members can be stored in a union at any time.
  • Odpowiedz
In a union, at most one of the non-static data members can be active at any time, that is, the value of at most one of the non-static data members can be stored in a union at any time.


@psychob: No i? Czytaj raz jeszcze - tu mamy jedne dane składowane, zaczynają się od tego samego miejsca, jedyne niezdefiniowanie może być kolejność bajtów. Czytaj ze zrozumieniem następnym razem.
  • Odpowiedz
Dodam do powyższego - to co napisales, jest ostrzeżeniem przeciw użyciu unii w ten sposób:

union x
{
int adresjakoint;
char *wskaznik;
  • Odpowiedz