Emmm,今天在刷leetcode的時(shí)候出了個(gè)奇怪的問題。//temp-(i*2)是一個(gè)int類型,s為string類型
if( temp-(i*2) >= s.length())
break;這條if語句總是判斷為true,然后break。但我在if后面輸出兩個(gè)變量的值的時(shí)候,temp-(i*2)明顯小于s.length()啊。但如果這樣修改的話,程序就可以正常執(zhí)行了int length = s.length();
if( temp-(i*2) >= length)
break;但這到底是為什么。。。?
2 回答

月關(guān)寶盒
TA貢獻(xiàn)1772條經(jīng)驗(yàn) 獲得超5個(gè)贊
s.length() 返回值是size__type 不是int,強(qiáng)轉(zhuǎn)之后再比較是沒問題的,所以你看到了兩個(gè)不同的運(yùn)行結(jié)果_。
- 2 回答
- 0 關(guān)注
- 1047 瀏覽
添加回答
舉報(bào)
0/150
提交
取消