:) 你好,
我已经为此挠头很久了。我只是想将 4294967296 添加到我的负整数(-432 到 +431)我有这个
int temp_int;
temp_int = ui->SpawnX->value(); //From spinbox
if(temp_int < 0)
{
temp_int = temp_int + 4294967296;
qDebug() << temp_int;
}
但无论我尝试什么,temp_int 都保持不变,我仔细检查了 qDebug。我究竟做错了什么!!!?
在我的程序的早期:
//Get spawn point and fix negative numbers
temp_hex = level.mid(18+level.indexOf("030006537061776e58"), 8);
HexToInt(temp_hex, SpawnX);
temp_hex = level.mid(18+level.indexOf("030006537061776e59"), 8);
HexToInt(temp_hex, SpawnY);
temp_hex = level.mid(18+level.indexOf("030006537061776e5a"), 8);
HexToInt(temp_hex, SpawnZ);
if(SpawnX > 432)
SpawnX = SpawnX-4294967296;
if(SpawnY > 432)
SpawnY = SpawnY-4294967296;
if(SpawnZ > 432)
SpawnZ = SpawnZ-4294967296;
在这种情况下,SpawnX,Y,Z 是 int,范围可以从 0 到 4294967295。