在MFC中调用NTL库 的例子哪位高手有

在MFC中调用NTL库 的例子谁有?
我编译总是出错 不知为何

#include "stdafx.h"
#include "5_12.h"
#include "5_12Dlg.h"
#include <openssl/err.h> 
#include <openssl/bio.h> 
#include <openssl/rsa.h>
#include <zz.h>
#include <windows.h>
#include <string.h> 
#include <time.h> 

一个按钮控制的函数算法:
void CMy5_12Dlg::Onchushihua() 
{
ZZ n,p1,p2,e,d,q,g;
    ZZ fn,fn1,fn2,fn3,pr,ii,mm,fnn,b;
int i=2;
RSA *r;//定义一个RSA 结构体
    int bits=1024;
    char errbuf[256];
    unsigned long ee=RSA_F4;//e=65537
 do 
 { 
r=RSA_generate_key(bits,ee,NULL,NULL);//RSA生成密钥函数 
if(r==NULL)//差错控制语句 

unsigned long errorcode=ERR_get_error(); 
    ERR_error_string(errorcode,errbuf); 
 } 



char *strn=BN_bn2dec(r->n);//将16进制字符串转变为10进制字符串 
n=to_ZZ(strn);//将字符串转变为ZZ数据类型 
char *strp1=BN_bn2dec(r->p); 
p1=to_ZZ(strp1); 
char *strp2=BN_bn2dec(r->q); 
p2=to_ZZ(strp2); // n p1 p2
 }while(p1%4!=3||p2%4!=3);//p1=p2=3 mod 4 
 char *stre=BN_bn2dec(r->e); 
 e=to_ZZ(stre); //e
 char *strd=BN_bn2dec(r->d); 
 d=to_ZZ(strd); //d
 fn=(p1-1)*(p2-1);//O(n)=(p1-1)*(p2-1); 
do 

do 
{pr=RandomBnd(p1-1)+1;
fn1=PowerMod(pr,fn/p1,n);
fn2=PowerMod(pr,fn/p2,n);}while(fn1==1||fn2==1);//pr为模n的任一原根 

do {q=fn/i;
fnn=q*i;
ii=ProbPrime(q,10);
i++;
 }while(ii==0&&(fn!=fnn));b=fn/q;//q为g的任一阶 
g=PowerMod(pr,b,n);//g为n的生成元 
}while(Jacobi(g,p1)!=1||Jacobi(g,p2)!=1);//控制g属于模n的平方剩余集合QRn x2=g%n

}
报错:
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(152) : error C2062: type 'int' unexpected
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(152) : error C2062: type 'int' unexpected
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(152) : error C2059: syntax error : ')'
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(152) : error C2143: syntax error : missing ';' before '{'
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(152) : error C2447: missing function header (old-style formal list?)
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(153) : error C2062: type 'int' unexpected
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(153) : error C2062: type 'int' unexpected
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(153) : error C2059: syntax error : ')'
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(153) : error C2143: syntax error : missing ';' before '{'
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(153) : error C2447: missing function header (old-style formal list?)
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(155) : error C2062: type 'long' unexpected
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(155) : error C2062: type 'long' unexpected
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(155) : error C2059: syntax error : ')'
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(155) : error C2143: syntax error : missing ';' before '{'
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(155) : error C2447: missing function header (old-style formal list?)
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(156) : error C2062: type 'long' unexpected
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(156) : error C2062: type 'long' unexpected
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(156) : error C2059: syntax error : ')'
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(156) : error C2143: syntax error : missing ';' before '{'
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(156) : error C2447: missing function header (old-style formal list?)
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(158) : error C2062: type 'int' unexpected
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(158) : error C2062: type 'long' unexpected
e:\program files\microsoft visual studio\vc98\include\ntl\tools.h(158) : error C2059: syntax error : ')'