我試圖儘可能有效地移動我的數組。即時通訊使用指針,現在,有麻煩分配值回我的數組IM:指針移位數組C++
void stack::rotate(int nRotations)
{
if (count <= 1) return;
int *intFrontPtr = &items[top+1].n;
int *intBackPtr = &items[count-1].n;
int temp = 0;
for (int shift = 0; nRotations != 0 ;)
{
if (nRotations > 0) // we rotate left
{
temp = *++intFrontPtr; // give temp the value
items[++shift].n = temp; // debug shows success
if (shift == count) // dont overrun array
{
temp = *intBackPtr;
items[count-1].n = temp;
shift = 0; // reset for another rotation
nRotations--; // decrement we have reached the end
}
}
}
}
如果您接受的答案超過21%,那麼您可能會獲得更多幫助。 – cdiggins 2009-11-01 04:23:48
而且,如果他不只是一遍又一遍地重複同一個問題... – 2009-11-01 14:03:38
太多沒有給出答案...例如,「top」定義在哪裏......什麼是「n」? – dicroce 2009-11-01 16:49:03