1、定义一个基本类型指针
dataType * varName;    dataType:      能够存放的数据类型的数据地址    int    float    char    ...  *:      表示这是一个指针变量   varName:       指针变量名如:    int * p;  声明一个p指针变量,如果没有赋值,那么默认会分配一个垃圾值地址。  所以也叫定义一个指针变量。
2、怎么使用指针变量
int * p;int i = 1;p = &i;//指针变量只能存储地址printf("%d",*p);// *p => 以该指针变量的内容为地址的变量//这里就是以p的内容(i的地址)为地址的变量
3、用场
1、读写不同作用域的变量(修改实参的值)
/*    比如我们想要读写另一个函数的变量,因为作用域不同,不能直接读写,比如通过传参的方式,但是传参也就是把值赋给形参,形参也是局部变量,修改形参也只是修改自己作用域的。    所以这里我们就需要指针变量操作了。*/void main(){    int num = 1;    int num1 = 2;    printf("%d %d",num,num1);//1 2    add(&num,&num1);    printf("%d %d",num,num1);//2 3}void add(int * num, int * num1){    //此时 num 就是main中的num的地址了,num1就是main中的num1的地址了。    *num = 2;//通过*num就能读写main中的num了。    *num1 = 3;}