2
我剛剛開始搞GMP,我似乎無法讓數字正確打印。這是我想要的:GMP gmp_printf()
#include <stdio.h>
#include <stdlib.h>
#include "gmp.h"
int main(){
mpz_t n;
mpz_init (n);
mpz_set_ui(n, 2);
gmp_printf("attempt 1: %d \n", n);
gmp_printf("attempt 2: %Z \n", n);
return 0;
}
我知道這一定很簡單......但我只是沒有看到它。
我的輸出是:
attempt 1: 1606416528
attempt 2: Z
我想我可能只是使用mpz_set_ui錯...
編輯:
%ZD的作品我也試過%的正我本以爲這工作,但不......在這方面肯定需要一些幫助。
* mpz_t *是什麼類型?是一個結構,一個聯合,一個簡單的typedef到一個整數? – 2012-07-24 11:51:16
@ A.G。 - 它是GMP宣佈的一種不透明類型。這個想法是,人們永遠不需要知道它的內部。它應該表示一個任意的精度整數(即可以比機器的ISA本身支持的寬度大很多) – ArjunShankar 2012-07-24 11:59:36