因为循环对列,rear不一定比front大
如果rear<front结果是rear-front+maxsize
如果rear>front结果是rear-front
为了用一个表达式同时表达两者,用(rear-front+maxsize)%maxsize
假设maxsize=10
rear=1 front=9,那么结果是2
rear=9 front=1,那么结果是8
reference:
因为循环对列,rear不一定比front大
如果rear<front结果是rear-front+maxsize
如果rear>front结果是rear-front
为了用一个表达式同时表达两者,用(rear-front+maxsize)%maxsize
假设maxsize=10
rear=1 front=9,那么结果是2
rear=9 front=1,那么结果是8
reference: