I wanna change the assigned value format's long in this function (value) "set(handles.edit1, 'String', value)"

1 visualizzazione (ultimi 30 giorni)
%for example x=-0.134635523018792
%for gui presentation
set(handles.edit1, 'String', x)
%in gui x=-0.1346355 %7 numbers after the dot is appeared but I want to see whole numbers after the dot

Risposta accettata

Jan
Jan il 17 Apr 2013
Modificato: Jan il 17 Apr 2013
It is very surprising that
set(handles.edit1, 'String', x)
shows any string at all, when x is a double value. Actually only strings and cell strings are accepted.
This shows x with 16 digits:
x = -0.134635523018792;
set(handles.edit1, 'String', sprintf('%.16g', x))
Note that it cannot be guaranteed, that you see "all" digits, because there are no accurate decimal representations for the numbers, which are store in binary format internally. See also: FAQ: Why is 0.3-0.2-0.1 ~= 0
  4 Commenti

Accedi per commentare.

Più risposte (1)

Yao Li
Yao Li il 17 Apr 2013
x='-0.134635523018792';
  4 Commenti
Yao Li
Yao Li il 17 Apr 2013
Actually, I tried the command on my computer just now and it works well. I don't know why you failed.

Accedi per commentare.

Categorie

Scopri di più su Characters and Strings in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by