ExpertiDict

C · Avançado · Inglês · Técnico

endianness

/ˈɛn.di.ən.nəs/substantivo

Ordem em que os bytes de um valor multibyte ficam na memória: little-endian guarda o byte menos significativo primeiro, big-endian guarda o mais significativo.

Onde usar

Importa ao ler ou gravar inteiros em arquivos e na rede. Protocolos de rede usam big-endian, e funções como htonl convertem entre a ordem do host e a da rede.

Em código

uint32_t x = 1;
unsigned char *b = (unsigned char *)&x;
puts(b[0] ? "little" : "big");

Exemplos

The file format is big-endian, so we swap the bytes on x86.

O formato do arquivo é big-endian, então trocamos os bytes em x86.

Endianness bugs only show up when you change platforms.

Bugs de endianness só aparecem quando você muda de plataforma.

Cuidado

Montar inteiros copiando bytes crus com cast de ponteiro; use shifts explícitos ao serializar.

Sinônimos

ordem dos bytes

Origem

Vem de Gulliver's Travels, de Swift, em que povos brigam por qual ponta do ovo quebrar.

Veja também

Todos os termos de C