Ten sam program, używający unii może zupełnie inaczej działać w zależności od tego, czy liczby są zapisywane jako big endian, czy little endian i jaką mają długość w bajtach:

u.wartosc=0x44434241;

W u.tablica_znakowa znalazł się napis: 'ABCD' w przypadku procesora Intel, kompilator 32-bitowy 'AB' w przypadku procesora Intel, kompilator 16-bitowy dla DOS-u 'DCBA' w przypadku procesora Motorola,

Struktury jako pola unii Elementami unii mogą być struktury, co czasem jest przydatne:

union liczba { struct { unsigned int a :8; unsigned int b :8; unsigned int c :8; unsigned int d :8; } rozbicie_na_bajty;

struct { unsigned int a :16; unsigned int b :16; } rozbicie_na_slowa;

unsigned int liczba;

Unie anonimowe C++ dopuszcza tzw. unie anonimowe () w których nie ma ani nazwy unii, ani nazwy zmiennej:

union { int liczba; char znak;

Do pól takiej unii można dostawać się bezpośrednio używając ich nazw (np. liczba lub znak z przykładu powyżej). Czasem ten mechanizm jest stosowany przy umieszczaniu unii anonimowej jako pola struktury.