Resultados da pesquisa a pedido "unions"

10 a resposta

União e problema de embalagem struct

Estou escrevendo algum software em que cada bit deve ser exato (é para a CPU), então __packed é muito important typedef union{ uint32_t raw; struct{ unsigned int present:1; unsigned int rw:1; unsigned int user:1; unsigned int dirty:1; unsigned ...

4 a resposta

Quando usar uma união e quando usar uma estrutura

Eu sei as diferenças entre união e estrutura. Mas, de uma perspectiva de design e codificação, quais são os vários casos de uso de uma união em vez de uma estrutura? Um é a otimização do espaço. Há mais vantagens em usá-los?

16 a resposta

Por que precisamos de sindicatos C?

Quando os sindicatos devem ser usados? Por que nós precisamos deles?

3 a resposta

C uniões e polimorfismo [duplicado]

3 a resposta

Existem garantias para uniões que contêm um tipo de quebra automática e o próprio tipo?

Posso colocar umT e um embrulhadoT em umunion e inspecioná-los como eu gosto? union Example { T value; struct Wrapped { T wrapped; } wrapper; }; // for simplicity T = int Example ex; ex.value = 12; cout << ex.wrapper.wrapped; // ?Os padrões C ++ ...

1 a resposta

Acessando membro inativo do mesmo tipo em uniões

Eu tenho algo parecido com isto: union DataXYZ { struct complex_t { float real, imag; } complex; struct vector_t { float magnitude, phase; } vector; };Eu tenho alguns vetores desses, sendo a memória do espaço de trabalho de uso geral, onde ...

5 a resposta

Por que o tamanho da minha união é maior do que eu esperava?

Quando imprimo o tamanho de uma união como esta: union u { char c[5]; int i; } un;using this: int _tmain(int argc, _TCHAR* argv[]) { printf("size of union = %d ",sizeof(un)); return 0; } Recebo uma resposta de 8 usando o Visual C ++, mas ...

4 a resposta

memcpy / memmove para um membro do sindicato, isso define o membro 'ativo'?

Esclarecimentos importantes: alguns comentaristas parecem pensar que estou copiando de um sindicato. Olhe atentamente para omemcpy, copia do endereço de uma planície antigauint32_t, que não está contido em uma união. Além disso, estou copiando ...

4 a resposta

Nomeação de elementos de matriz ou estrutura e matriz em uma união

Considere a seguinte estrutura: struct Vector4D { union { double components[4]; struct { double x, y, z, t; } Endpoint; }; }; Parece-me que tenho visto algo semelhante na estrutura do endereço IP do WinApi. A idéia é me dar a possibilidade de ...

2 a resposta

Layout da memória da união de membro de tamanho diferente?

typedef union epoll_data { void *ptr; int fd; __uint32_t u32; __uint64_t u64; } epoll_data_t;Aquiint e__uint32_t são 4 bytes, enquanto os outros são 8 byte Quando definimosfd para umint, está nos primeiros 4 bytes ou nos últimos 4 bytes ou ...