指针的概念
函数中对变量直接修改相当于在他人的梦境中改变他们,
任由你多么努力,在现实生活中他们是永远没办法变化的,
所以你就需要一个使用魔法(指针),将现实的人带到梦境中,
加以改变,当梦境消失后,被改变的人是现实中的人而不是梦境中的人。
关于我为什么用梦境来表示呢,因为梦境一但打破,梦境里所存在东西就直接消失,
这里和函数里的变量一样,一旦离开函数,函数里的变量(局部变量)就会消失。
所以我想用梦境来表示 应该恰到好处吧!
下面是两个用解释的源码:
①直接改变,不用指针
//代码块
#include<iostream>
using namespace std;
void fun(int a,int b){
a=3;
b=4;
}
int main(){
int a,b;
cout<<"a = ";
cin>>a;
cout<<"b = ";
cin>>b;
fun(a,b);
cout<<"a = "<<a<<endl<<"b = "<<b<<endl;
}
②利用指针,间接改变
#include<iostream>
using namespace std;
void fun(int *a,int *b){
*a=3;
*b=4;
}
int main(){
int a,b;
cout<<"a = ";
cin>>a;
cout<<"b = ";
cin>>b;
fun(&a,&b);
cout<<"a = "<<a<<endl<<"b = "<<b<<endl;
}