Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

205
Visualizações
Por qué BSON no usa uint32_t en lugar de int32_t para la longitud del documento

Según la especificación BSON, se utiliza un int32_t para el número total de bytes que comprende el documento.

También puedo ver que mongo-c-driver está usando Libbson y está usando int32_t.

Pero, ¿cuál es la razón para usar enteros con signo en lugar de enteros sin signo?

el tamaño del documento nunca será inferior a 0. ¿Puede alguien explicar el motivo?

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

El tamaño del documento está limitado a 16 MB, lo que cabe en un número entero de 32 bits con signo con espacio de sobra.

Si bien se consideraron límites de tamaño de documento superiores a 16 MB, supongo que no hubo una consideración seria de los tamaños de documento que superan los 2 GB, por lo tanto, la diferencia en el rango que se obtiene al usar enteros de 32 bits sin signo para la longitud no fue un beneficio significativo.

Por lo tanto, no hay motivo para utilizar un tipo sin firmar.

Razones para NO usar un tipo sin firmar:

  • Potencial envolvente de UINT_MAX a 0.
  • -1 podría usarse como un designador especial.
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda