2009-03-06 11 views
5

私は、cの中で最大の数値データ型より大きい数値で作業する必要があるプロジェクトに取り組んでいます。私はこれを表現するためにビットフィールドを持つ構造体を使用することを考えていましたが、すでに悪いにおいがしています。誰もがヒントを得た? (ライブラリーを探していない、このようなことをやるための思考プロセスの多く)。cで任意の大きな数値を表す最も良い方法は何ですか?

+0

私はこれが参照の正確な複製であることに同意しません。私はライブラリ(それを指定しているはずです)を探しているわけではありませんが、大きな数値データのベストプラクティスです。この場合はLinux上にありますが、これはプラットフォームに依存しません。 – sdellysse

答えて

5

まず、GNU MP Bignumライブラリをチェックアウトすることをお勧めします。

ライセンスが問題な場合は、自分でロールする必要があります。データ型の最初の選択肢は、配列の大きさを示すための余分なデータと共に、単純な配列のunsigned charです。このような

何か:

typedef struct 
{ 
    unsigned char * NumberData; 
    size_t   AllocatedSize; 
} MyBigNum; 

は十分なはずです。

関連する問題