2009-07-14 7 views
0

このビットには文字列"kellogs special k"を渡し、1という文字列が整数であることを意味します。私は間違って何をしていますか?それともGMPの問題ですか?ところでこれはGMP 4.1.2のバグですか?それとも間違っているのですか?

#define F(x) mpf_t (x); mpf_init((x)); 

long __stdcall FBIGISINTEGER(BSTR p1) { 
    USES_CONVERSION; 
    F(n1); 
    LPSTR sNum1 = W2A(p1); 
    mpf_set_str(n1, sNum1, 10); 
    return mpf_integer_p(n1); 
} 

、誰もがより多くの最近のGMPを使用することをお勧めするつもりだ場合、あなたは私のWindows用の静的LIBのウェブアドレスを与えることができますしてください。 TIA。

答えて

3

戻り値mpf_set_strを確認する必要があります。成功した場合は0、失敗した場合は-1を返します。この場合、障害が返され、n1は変更されません。 mpf_initはゼロに初期化されているため、0が整数であるかどうかをテストするとmpf_integer_pがtrueを返します。

関連する問題