c++之指针简要总结

1、指针是一种变量。定义了一个指针变量。
2、指针是动态的数据结构,可以动态的申请内存空间,通过“p=new(int);”,申请一个内存空间,并把地址赋值给p。
3、int等是静态的数据结构,
4、*:取地址运算符
5、&:简接运算符
6、int (*fp)(int):函数指针,本质是一个指针变量。函数指针结合typedef自定义类型使用。
7、typedef定义的类型和int,char,double,longlong 同类。
8、int *fp(int):指针函数,本质是一个函数。
—————————–指针的例子—————————————
#include <iostream>
using namespace std;
int main()
{
    int a = 10;
    cout << a << endl;
    cout << &a << endl; //a内存地址
    int *p;
    cout << *p << endl; //指针值未指定的时候是空值。
    p = &a;
    cout << *p << endl; //指针的值是10
    cout << &p << endl; //指针内存地址,和a的内存地址不一样
    *p = 20;            //改变指针的值,现在是20,a也同样改为20。
    cout << a << endl;  //a的值是20。
    cout << &a << endl; //a的内存地址不变。
    cout << &p << endl; //指针的内存地址不变。
    a = 10;             //a值重新被赋值为10,还是原来的10.
    cout << a << endl;
    cout << *p << endl; //指针的值又变回原来是10.
    return 0;
}
输出如下:
10
0x28feac
2686868
10
0x28fea8
20
0x28feac
0x28fea8
10
10
————————————-结尾线—————————————–