2010-12-31 3 views
1

以下のコードを使用してlong long型整数のabs値を取得しようとします。long long整数のabs値を取得する

long long v=abs(originalValue); 

私は予想通り、Vの値は1073741824(1G)を超えるまでは動作

vが2147482648である場合には、ABS(V)が-2147482648です。

vが10737418240の場合、abs(v)も-2147482648です。

これらの原因はわかりません。

は、任意のコメントに代わり

おかげ

InterDevの

答えて

3

使用llabs()ようこそ:

long long v = llabs(originalValue); 
1

absは長い長い使用llabs

+0

+のために、引数としてint型を取りますマニュアルページへのリンクについては、1を参照してください。 –

関連する問題