У меня есть переменная типа float. Xcode отображает его в экспоненциальном представлении (например, 3.37626e+07). Я пытаюсь заставить его отображаться с использованием записи через точку (например, 33762616,00).
Я пробовал все форматы, предоставляемые lldb, но ни один из них не отображает число с плавающей запятой с использованием десятичных знаков. Я читал другие сообщения и смотрел сеанс 415 WWDC2012 (как предложено здесь), но я должен быть слишком близко к лесу, чтобы видеть деревья. Любая помощь будет принята с благодарностью!
lldb - Как отобразить число с плавающей запятой с десятичными знаками, используя формат типа добавить
Ответы (1)
Попробуйте добавить пользовательский форматтер данных в файл ~/.lldbinit
для типа float
. например
Process 13204 stopped
* thread #1: tid = 0xb6f8d, 0x0000000100000f33 a.out`main + 35 at a.c:5, stop reason = step over
#0: 0x0000000100000f33 a.out`main + 35 at a.c:5
2 int main ()
3 {
4 float f = 33762616.0;
-> 5 printf ("%f\n", f);
6 }
(lldb) p f
(float) $0 = 3.37626e+07
(lldb) type summ add -v -o "return '%f' % valobj.GetData().GetFloat(lldb.SBError(), 0)" float
(lldb) p f
(float) $1 = 33762616.000000
(lldb)
Набор средств форматирования по умолчанию, предоставляемый lldb, не может этого сделать, но переход на Python дает вам большую гибкость.
person
Jason Molenda
schedule
13.03.2013
Спасибо, я не знал, что вы можете так использовать Python. Хорошая вещь!
- person MikeyE; 18.11.2014