1:
- void foo(int *a)
- {
- *a=10;
- }
- int a;
- foo(&a);
2:
- void foo1 (int &a)
- {
- a=20;
- }
- int a;
- foo(a);
vc2003 debug编译
如果传递的本身就是指针
- int *a;
要改变a指针的地址,可以这样写函数
- void pfoo (int **a)
- {
- *a = (int *)malloc(sizeof(int));
- assert(*a);
- **a = 1;
- }
或者
- void pfoo1 (int *&a)
- {
- a = (int *)malloc(sizeof(int));
- assert(a);
- *a = 5;
- }
- int b=0;
- int *a = NULL;
- a = &b;
- pfoo(&a);
- pfoo1(a);
ok,希望对理解指针,内存的关系有所帮助。
本文介绍了C/C++中指针的使用方法及内存管理技巧,包括如何通过引用和指针修改变量值,以及如何动态分配和释放内存。通过具体示例展示了不同编译器下的行为差异。
2083

被折叠的 条评论
为什么被折叠?



