我有一個for循環,它被設計用於獲取目標編號,並循環遍歷堆棧,直到找到數據在堆棧[目標],它應該返回該數據。自定義堆棧的「seek」函數返回陣列中的位置而不是數組中的位置值
不幸的是,我只能得到它返回它所在的數組的位置或隨機數字的字符串(它隨着我的代碼週期性地改變)。
我試着只是返回stackArray [計數器],但行爲就好像我只是返回計數器。 然後,我改變了代碼來創建一個新的變量,然後返回該變量,我回到了數字字符串。我認爲這與我的堆棧數組是一個指針有關?在這裏打磚牆,這樣任何輸入都會有所幫助。
這裏是我的循環(最新版本至少我已經嘗試過許多不同的方式。):
for (int counter = 0; counter < target; counter++)
{
if (stackArray[counter] == target)
{
answer = stackArray[counter];
}
cout << "beep " << counter << " " << target << endl;
}
這段代碼沒有任何意義。如果你想'stackArray'的'target'-index項目,你可以直接訪問它(stackArray [target])。如果你想找到包含值「target」的數組的索引,那麼你的循環需要運行到數組的末尾,而不是「目標」,然後「應答」將被設置爲「計數器」,而不是'stackArray [計數器]'。 –
哇,突然它點擊了,我根本不需要for循環來訪問這個..我想我的思想仍然在以某種模糊的方式思考鏈表。我很困惑,我的實驗室實際上應該做什麼現在..它就像是一個實驗室,如果我所要做的就是返回(stackArray [目標]),我認爲我過於複雜,因爲它現在看起來太簡單了。謝謝。再次編輯。我認爲我應該做的是相反的,因爲堆棧是最後進入先出,我想我現在得到它 – user2271589