在閱讀上循環分析一文中,我碰到下面的線性搜索例程來在數組中返回最大值:兩個指標增量環
template <class otype>
int location_of_max (const otype a[], int first, int last)
{
int max_loc = first;
for (++first; first <= last; ++first) {
if (a[first] > a[max_loc]) {
max_loc = first;
}
}
return max_loc;
}
有兩個增量++first
在相同的循環條件有點混亂。是否有一個原因?
downvote也困惑我。 – wally
乍一看,我幾乎低估了這一點,作爲一個「好吧,你爲什麼不問那個寫它的人?蠢事。但是它是可以回答的,所以... –