sprintf bug?

1 visualización (últimos 30 días)
oguz sen
oguz sen el 7 de Oct. de 2011
I run the following lines to reformat my integer data into string sprintf('%024.0f',1000010000000000000000);
and i expect the result to be
001000010000000000000000
but it's 001000009999999999900000
can someone explain this?
thanx in advance..

Respuesta aceptada

Laura Proctor
Laura Proctor el 7 de Oct. de 2011
It has to do with the size of the value you are entering; it is larger than the largest integer-valued floating-point number (2^52) allowed. It is being resolved to the value that you are seeing as the output.
  1 comentario
Jan
Jan el 7 de Oct. de 2011
2^53-1, see BITMAX. http://www.mathworks.de/support/tech-notes/1100/1108.html

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Numeric Types en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by