笔记1
对于使用&和不使用&的理解
#include <stdio.h>
using namespace std;
void text(int x) {
x = 1024;
printf("text的函数内部x=%d\n",x);
}
int main() {
int x = 1;
printf("调用text之前x=%d\n",x);
text(x);
printf("调用text后x=%d\n",x);
}
自己的理解: 不需要把修改的值返回来的话就不需要使用&, 在text函数里面的修改相当于是对主函数参数X的复制品进行修改如图
他不会影响主函数中X的值。
如果使用&如下代码:
#include <stdio.h>
using namespace std;
void text(int &x) {
x = 1024;
printf("text的函数内部x=%d\n", x);
}
int main() {
int x = 1;
printf("调用text之前x=%d\n", x);
text(x);
printf("调用text后x=%d\n", x);
}
可以这样想象 它就相当于是 别名、引用、链接了过来 实际上修改的是主函数中参数的值,
暂时 我的理解就是这样