C语言--------指向指针的指针

//

//  main.c

//  指向指针的指针

//  Created by apple--王迅 on 15/8/23.

//  Copyright (c) 2015年 apple. All rights reserved. 

//  main.c

//  测试指针

//

//  Created by apple--王迅 on 15/8/21.

//  Copyright (c) 2015年 apple. All rights reserved.

 

#include <stdio.h>

 

int main() {

    int a=8;

    int *p1;

    p1=&a;   //*p1==a;

    int **p2;

    p2=&p1;

    

    //打印a 的值

    printf("a的值为=%d\n",a);

    //打印p1这个指针变量的地址

    printf("p1的地址为=%p\n",&p1);

    //打印p1这个指针变量的值,因为值就是变量a的地址,所以用%p打印

    printf("p1的值为=%p\n",p1);

    //指针变量p1所指的存储空间的里面的内容,p1指向变量a的存储空间也就是说p==&a;而p1所指向的存储空间的里面的内容(值)*p==a,也就是a 的值

    printf("p1值所指存储空间的值为=%d\n",*p1);

    //打印二级指针变量p2的地址

    printf("p2的地址为=%p\n",&p2);

    //打印二级指针变量p2的值,也就是p2这个二级指针变量的值(二级指针的值就是p1的地址)

    printf("p2所指的存储空间为=%p\n",p2);

    //打印二级指针变量p2这个指针变量里面所存储的那个地址里面的值(二级指针的值是p1,二级指针值所指的内容也就是a的值)

 

    printf("P2的值所指的内容为=%d",**p2);

    return 0;

}

运行结果:

a的值为=8

p1的地址为=0x7fff5fbff7b0

p1的值为=0x7fff5fbff7b8

p1值所指存储空间的值为=8

p2的地址为=0x7fff5fbff7a8

p2所指的存储空间为=0x7fff5fbff7b0

P2的值所指的内容为=8

posted @ 2015-08-23 23:21  王迅  阅读(127)  评论(0)    收藏  举报