[英]Is this a bug in GMP 4.1.2 or is it something I'm doing wrong?
在這部分代碼中,我傳遞了字符串"kellogs special k"
,得到1
,這表示該字符串是整數。 我到底在做什么錯? 還是GMP問題?
#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。
您應該檢查mpf_set_str
的返回值。 成功返回0
,失敗返回-1
。 在這種情況下,它會返回一個故障,並且n1
保持不變。 mpf_init
將其初始化為零,因此使用mpf_integer_p
測試零是否為整數是mpf_integer_p
返回true。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.