문제

나는 큰 정수를위한 라이브러리를 찾고 있지만 고정 너비가 있습니다 (128 또는 256로 충분합니다). 그 이유는 힙에 할당을 원하지 않기 때문입니다. 나는 그들을 직접 만들려고 노력했지만 곱셈, 분열 및 모듈로를 효율적인 방법으로 구현하는 것은 상당히 고통스러운 것 같습니다.

이것은 이미 어딘가에 존재합니까?

감사

도움이 되었습니까?

해결책

GMP 라이브러리 (www.gmplib.org)를 살펴보십시오

함수 범주에서 인용 :

낮은 수준의 양수 인트거, 사용하기 어려우며 매우 낮은 오버 헤드 함수는 MPN 범주에서 발견됩니다. 메모리 관리는 수행되지 않습니다. 발신자는 결과에 충분한 공간을 사용할 수 있도록해야합니다. (...)

그것은 당신이 필요로하는 것 같습니다.

다른 팁

이것은 적어도 유망한 것처럼 보입니다 ( int128 library 구글에서).

http://www.mx-3.cz/tringi/www/langen.php?id=int128

"다른 대량 클래스와 달리 다른 포드 유형 (예 : Fwrite/Fread를 사용한 파일의 저장 및로드)과 마찬가지로 작업을 수행 할 수 있습니다. 내부 표현은 올바른 128 비트 리틀 엔디안 정수입니다."

GMP가 당신의 취향에 너무 복잡하다는 것을 알게되면 Dave Hanson은 그의 책에 아주 좋은 기능을 가지고 있습니다. C 인터페이스 및 구현. 할당을 수행하지 않는 저수준 인터페이스가 있으며 (모든 것을 제어), 힙에 점차 더 많은 할당을 관리하는 두 개의 상위 레벨 인터페이스가 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top