2

10 進数の浮動小数点値を 16 進数、2 進数、および 8 進数の NSString に変換するために目的の c で使用できるカスタム ライブラリまたは標準ライブラリはありますか?

私はたくさん見回してきましたが、次を使用して、他の方向を(他のすべてのものから10進数に)変換する方法しか見つけることができません。double result = (double)strtoll(myHexString.UTF8String, NULL,16)

4

2 に答える 2

1

8 進数と 16 進数に関しては、%x と %o 指定子を使用して 16 進数と 8 進数で数値をフォーマットできるという事実を利用できます。

NSString* str=[NSString stringWithFormat: @"Hex: %x Octal: %o",14,14];

ただし、これは整数部分にのみ使用できるため、整数を使用できます。小数部分も必要な場合は、固定小数点を取得するには、2 進数と同じようにアルゴリズムを実装する必要があります。

于 2012-11-02T23:03:33.460 に答える
0

前の回答を補足するために、書式指定子 %x を使用すると整数値のみを処理できます。最大整数値より大きい 10 進数値を取得した場合、次の方法で long long を使用して double 値をキャストできます。NSString * hexString = [NSString stringWithFormat:@"%llx", (long long)doubleValue];

于 2014-10-08T15:48:45.550 に答える