我有兴趣在列表中迭代,以便我可以从任何位置开始并遍历整个列表,然后循环回到开始位置并迭代到起始位置。“循环”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