int a=1;
int *p=&a;
int **p1=&p;
p和p1指向的对象的值:
*p;指向的对象a的值
p; 存储a的地址
&p;p的地址
*p1;指向的对象p的值,p存储的是a的地址
**p1;a的值,等同*p
p1;存储p的地址
&p1;p1的地址
#include "stdafx.h"
#include <iostream>
using namespace std;
int main(){
typedef int *ptr;
int a = '1';
ptr p =&a;
ptr *p1 = &p;
//变量a的值
cout << a << " "<< *p<<" "<<**p1<<endl;
//变量a的地址
cout << &a << " " << p << " " << *p1 << endl;
//指针p的地址
cout << &p << " " << p1 << endl;
//指针p1的地址
cout << &p1 << endl;
system("pause");
return 0;
}
本文通过具体的C++代码示例,详细解释了指针和双重指针的概念及其使用方式。介绍了如何定义和初始化指针及双重指针,演示了如何通过指针访问变量的值和地址,以及如何通过双重指针访问指针本身的值。
518

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



