Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

204
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!