Передача указателя в функцию C ++ (Howto) + манипуляция указателем в C ++

Я немного озадачен тем, как работает передача указателей.

Допустим, у меня есть следующая функция и указатель, и ...

РЕДАКТИРОВАТЬ:

... Я хочу использовать указатель на некоторый объект в качестве аргумента в функции.

т.е .:

void Fun(int Pointer){
    int Fun_Ptr = ---Passed Pointer---; 
    //So that Fun_Ptr points to whatever ---Passed Pointer points to

Между нотациями * Pointer и & Pointer я очень запутался. Я знаю, что * указатель означает дать все, на что он указывает.

Я должен положить void (int * указатель) в объявлении. Как насчет того, когда я использую функцию?

Ваша помощь приветствуется.

РЕДАКТИРОВАТЬ 2:

Хорошо, теперь я понимаю, что использование * переменной в объявлении означает, что указатель будет передан. Однако как насчет того, когда я использую функцию?

то есть

int main(){
    int foo;
    int *bar;
    bar = foo;
    Fun(bar);
}

РЕДАКТИРОВАТЬ 3: Хорошо, поправьте меня, если я ошибаюсь:

В соответствии с соглашениями приведенного выше кода:

bar = & foo означает: сделать бар указателем на foo в памяти

* bar = foo означает изменить значение, на которое указывает bar, на любое равное foo

Если у меня есть второй указатель (int * oof), то:

bar = oof означает: бар указывает на указатель oof

bar = * oof означает: bar указывает на значение, на которое указывает oof, но не на сам указатель oof

* bar = * oof означает: изменить значение, на которое указывает bar, на значение, на которое указывает oof

& bar = & oof означает: изменить адрес памяти, на который указывает строка, таким же, как адрес памяти, на который указывает oof

Есть ли у меня это право?

РЕДАКТИРОВАТЬ 4: Большое спасибо за вашу помощь (я хотел бы принять более одного ответа, но я должен идти с первым. Я не уверен, как именно работает вики сообщества, но я оставлю это так для редактирование (не стесняйтесь превратить его в справочник, если хотите).

Ответы на вопрос(7)

Ваш ответ на вопрос