指针传值易注意点
来源:互联网 发布:冒险岛源码 编辑:程序博客网 时间:2024/06/06 07:31
struct _ClassA { int x; int y;}ClassA, PCLassAFun(ClassA *p){ ClassA a; a.x = 1; a.y = 2; p = &a; }// 调用Fun后,会发现p指针还是指向NULLClassA *p = NULL;Fun(p);
p指针还是指向NULL,原因如下:
传进函数Fun的参数p其实是p的一个副本p0,都指向NULL
所以 p = &a;
只是把a变量的地址赋给了p0,也就是p0指向了a的内存空间,这样当函数Fun执行完后,P当然还是指向NULL,没有被赋值
修改方法:
直接给p分配一款内存,这样p0其实也指向p的那块内存。
所以修改p0的值,也就是修给p的值
Fun(ClassA *p){ p.x = 1; p.y = 2;}ClassA *p = new ClassA();Fun(p);
阅读全文
0 0
- 指针传值易注意点
- 指针学习注意点
- 二级指针使用注意点
- 28,指针的注意点
- 指针若干注意点总结
- 指针的一些注意点
- 指针的几点注意点
- 单片机中的指针使用注意点
- c++中的引用于指针注意点
- 40,指针与字符串的注意点
- C指针的一些注意点
- 关于二维数组地址与指针的一些注意点
- C++一些注意点之函数参数为指针
- C++一些注意点之字符串与指针
- C++一些注意点之数组与指针
- c++一些注意点之虚表与虚指针
- C++一些注意点之指针成员管理
- C语言中指针的几点注意
- Python输出语句乱码解决方式
- java 中的 split regular | 需特别注意
- [bzoj1629][Usaco2007 Demo]Cow Acrobats
- UDP
- 剑指offer
- 指针传值易注意点
- 深度学习笔记——理论与推导之Structured Learning【Markov Random Field】(十)
- 在Ubuntu下重装Ubuntu
- Edittexth和TextView字体大小跟随输入长度自动缩放
- 汇聚交换机
- git常用命令
- FTP
- hibernate中query查询语句用占位符
- 好的json解析