指针 应用
来源:互联网 发布:淘宝虎扑伙伴是正品吗 编辑:程序博客网 时间:2024/05/01 06:29
#include <iostream>
using namespace std;
int f(int *& a, int * b)
{
cout<<*a<<endl;
cout<<*b<<endl;
return *a;
}
int T=1;
int ff(int * a){
cout<<(*a)<<"/t"<<a<<"/t"<<(&a)<<endl;
a=&T;
cout<<(*a)<<"/t"<<a<<"/t"<<(&a)<<endl;
}
int gg(int *& a){
cout<<(*a)<<"/t"<<a<<"/t"<<(&a)<<endl;
a=&T;
cout<<(*a)<<"/t"<<a<<"/t"<<(&a)<<endl;
}
int main()
{
int a=1000;
int *pa=&a;
cout<<"ff(int *a) /n";
cout<<"a:"<<a<<"/t(*pa)"<<(*pa)<<"/tpa:"<<pa<<"/t(&pa)"<<(&pa)<<endl;
ff(pa);
cout<<"a:"<<a<<"/t(*pa)"<<(*pa)<<"/tpa:"<<pa<<"/t(&pa)"<<(&pa)<<endl;
cout<<"----------------------------------------/n";
cout<<"gg(int *& a) /n";
cout<<"a:"<<a<<"/t(*pa)"<<(*pa)<<"/tpa:"<<pa<<"/t(&pa)"<<(&pa)<<endl;
gg(pa);
cout<<"a:"<<a<<"/t(*pa)"<<(*pa)<<"/tpa:"<<pa<<"/t(&pa)"<<(&pa)<<endl;
}
//output
ff(int *a)
a:1000 (*pa)1000 pa:0x7fff4d8ffbf4 (&pa)0x7fff4d8ffbe8
1000 0x7fff4d8ffbf4 0x7fff4d8ffbc0
1 0x601290 0x7fff4d8ffbc0
a:1000 (*pa)1000 pa:0x7fff4d8ffbf4 (&pa)0x7fff4d8ffbe8
----------------------------------------
gg(int *& a)
a:1000 (*pa)1000 pa:0x7fff4d8ffbf4 (&pa)0x7fff4d8ffbe8
1000 0x7fff4d8ffbf4 0x7fff4d8ffbe8
1 0x601290 0x7fff4d8ffbe8
a:1000 (*pa)1 pa:0x601290 (&pa)0x7fff4d8ffbe8
//指针会复制地址
int a;
fa is not equal with pa,进入函数内,用一个新的变量,这个变量地址不等于pa, 这个变量指向的内容里,从pa指向的地址拷贝而来. 也就是这两指针
都包含a的地址.
(fa) pa a
| |
[address of a] -- - - - -> [address of a]
copy addre
引用的话,不会产生新的变量,直接使用!
- 指针 应用
- 指针应用
- 指针应用
- 指针应用
- 指针应用
- C_C++指针指针应用详解
- C_C++指针指针应用详解
- C_C++指针指针应用详解
- C_C++指针指针应用详解
- 指针的应用
- 函数指针及应用
- 函数指针的应用
- 函数指针及其应用
- 函数指针的应用
- 函数指针的应用
- 二维指针应用
- 函数指针及应用
- 函数指针应用
- 6-11关注
- extJs 2.0学习笔记(Ajax篇)
- extJs 2.1学习笔记(通信篇)
- CSDN上一个很不错的纠正帖(关于习惯~)
- extJs 2.1学习笔记(JSON序列化篇)
- 指针 应用
- JavaScript 原型链
- 邮件接收服务器(pop3)与发送服务器(smtp)大全
- extJs 2.1学习笔记(Ext.data.Connection篇一)
- 七律.桃花
- extJs 2.1学习笔记(Ext.Updater篇一)
- SVN命令大全
- extJs 2.1学习笔记(Ext.data.Connection篇二)
- extJs 2.1学习笔记(Ext.Updater篇二)