2

を指定するとdouble d、それを印刷できます。

(lldb) expr d
(double) $2 = 3.05658e-08

次のように、d の数字をさらに印刷する方法はありますか

printf("%.15f", d) ?

問題の LLDB のバージョンは、OS X 10.7.4 で提供される LLDB-112.2 です。

編集:使用

(lldb) expr (int) printf("%.15f", d)

プロセスが強制終了され、

LLVM ERROR: Internal relocations not supported.

エラーメッセージ。

4

2 に答える 2

1

lldb-112.2 は、この時点で少し古いものです (約 6 か月か 7 か月前だと思います)。Xcode 4.5 lldb (lldb-167 など) と照らし合わせてチェックすると、正しく動作しているように見えます。

0.000000030565830
Process 77907 stopped
* thread #1: tid = 0x1c03, 0x0000000100000f34 a.out`main + 52 at a.c:6, stop reason = breakpoint 1.1
    #0: 0x0000000100000f34 a.out`main + 52 at a.c:6
   3    {
   4      double d = .00000003056583;
   5      printf ("%.15f\n", d);
-> 6      return 5;
   7    }
(lldb) p d
(double) $0 = 3.05658e-08
(lldb) expr (int)printf("%.15f\n", d)
(int) $1 = 18
0.000000030565830
于 2012-09-29T05:15:44.737 に答える
0

やってみました:

printf("%.15f", d)

?

于 2012-07-08T11:06:10.613 に答える