編譯過程中收到此警告。警告:格式'%d'需要類型'int',但參數6的類型爲'long int'
「警告:格式 '%d' 需要鍵入 '詮釋',但論點6的類型爲 '長整型'
我應該改變%d
到%lu
編輯:? 這是代碼的一部分。
if (item->GetVnum() == DRAGON_HEART_VNUM)
{
sprintf(buf, "Inc %ds by item{VN:%d SOC%d:%d}", ret, item->GetVnum(), ITEM_SOCKET_CHARGING_AMOUNT_IDX, item->GetSocket(ITEM_SOCKET_CHARGING_AMOUNT_IDX));
}
else
{
sprintf(buf, "Inc %ds by item{VN:%d VAL%d:%d}", ret, item->GetVnum(), ITEM_VALUE_CHARGING_AMOUNT_IDX, item->GetValue(ITEM_VALUE_CHARGING_AMOUNT_IDX));
}
'%ld'如果其簽署 – quantdev 2014-09-01 21:07:25
什麼是你的編譯器? – Rasool 2014-09-01 21:40:47
我們如何知道你應該改變什麼?也許你應該將格式更改爲'%ld'。也許你應該將參數改爲'int'。這就像是問'2 + 3 = 6'中的錯誤在哪裏。應該是'2 + 3 = 5'嗎?或者它應該是'2 * 3 = 6'。只有你知道你真正需要什麼。 – AnT 2014-09-01 21:57:55