我有興趣在列表中迭代,以便我可以從任何位置開始並遍歷整個列表,然後循環回到開始位置並迭代到起始位置。「循環」for循環在C
讓我們說我希望爲保證4個元素的數組做到這一點: char數組[4] = { 'A', 'B', 'C', 'd'}
我難以構建for循環,以至於我可以從'a'開始,循環abcd,或者從'b'開始,循環bcda,或者從d開始,並且循環dabc等。
我認爲for循環的最初部分就像i = startingPosition。
我認爲for循環的增量部分會像i =(i + 1)%4那樣。例如,從索引2開始,將上升到3,然後是0,然後是1,等等。
中間的「終止」條件是什麼?
for(i = startingPosition; ???; i = (i+1)%4)
謝謝!
像尾頭爲一個循環緩衝器? *** [看這裏](http://stackoverflow.com/questions/3882343/suggestions-for-concise-index-handling-in-circular-buffer)*** – ryyker