+ 1
How work pointers in C/C++
How can I use pointers for understand C++ mechanics?
3 Antworten
+ 3
As is known, a pointer is a variable whose value is the address of another variable. It's necessary to use them, for example, if we want to change the value of current variable passed to function by reference.
void func(int *p){
*num+=1; }
int main() {
int a=1, *p;
p=&a; //gives our pointer address of a
func(p);
cout<<a; //outputs 2
...}
If we pass variable by value, nothing happens (outputs 1). The same mechanism with structures, classes e.t.c.
+ 2
Thanks
+ 1
Попробуй передавать в функцию {param = param + 1}, например, по указателю/ссылке (*param/¶m), и по имени самой переменной (param). Убедись что при передаче по имени, передается копия значения переменной, а при передаче по адресу изменяется оригинальный параметр