2016-12-02 69 views
1

我最近在ubuntu 16.04上安裝了PARI庫。如果使用「gun」,「ghalf」等,gcc編譯失敗,錯誤代碼如下:GEN變量未識別 - PARI庫C

error:'gun'未聲明(首次在此函數中使用)

我是這個圖書館的新手,對此知之甚少。任何人都可以幫助我解決這個錯誤。

這是我試圖編譯代碼:

#include<stdio.h> 
#include <pari/pari.h> 
int main(void) 
{ 
GEN i,j,k; 
pari_init(500000,2); 
i=gun; 
j=stoi(3); 
k=gadd(i,j); 
printf("1+3=%s\n",GENtostr(k)); 
return 0; 
} 

回答

1

看起來你正在使用用於一個很老的版本PARI的代碼。現代版本使用gen_1而非gun爲恆定1.隨着這一變化,

gcc -o test-pari test-pari.c -lpari && ./test-pari 

產生

1+3=4

如所期望。或者(不推薦!),如果你想端口大量的舊代碼,你可以前

#include <pari/pari.h> 

和代碼工作,gun添加

#define PARI_OLD_NAMES 

+0

對不起,我花了這麼長的時間才發現這個問題! – Charles