這是前面提到的一個問題。用於更改數組值的指針算術
我已經學會了一些我的方式的錯誤,但有額外的問題。我的目標是在不使用任何全局變量的情況下從另一個方法更改一個方法中的本地數組。
void methodOne(){
int myArray[10] = {0};
int *pMyArray = myArray;
methodTwo(&*pMyArray);
}
這應該被宣佈爲空值的陣列,並且傳遞到所述第二數組的引用作爲我展示如何正確地這樣做here。
void methodTwo(int *passedPointer){
int *localPointer = passedPointer;
}
接下來我想從methodTwo中更改myArray的值。因此,要改變第一[0]
元素,我會說:
*localPointer = 1;
這是正確的嗎?
然後改變下一個元素我會增加使用指針:
localPoint++;
*localPointer = 2;
這會更改myArray的第二個值?我不確定這是否是正確的方法呢?
TIA
當你嘗試時發生了什麼? – 2012-04-23 16:22:08
只需使用'localPointer [i]'進行訪問。 – 2012-04-23 16:22:32