When we define a union, the memory allocated for a union variable of the type is the same as the memory required for the union's largest member, and other members share this memory space. "char arr[8]" is the largest member in the example above. As a result, the size of the union test is 8 bytes.