#include <stdio.h>

//一般用"地址"表示常量,用"指针"表示存储地址的变量
int     x = 3;   //定义int型变量x,内容为整数3
int   *px = &x;  //定义指向int型变量的指针px,内容为变量x的地址
int **ppx = &px; //定义指向int型变量地址的指针ppx,内容为指针px的地址

int main(int argc, char *argv[])
{
    printf("Hello C-Free!\n");

    printf("   &x = %p\r\n", &x);//x的地址
    printf("    x = %d\r\n\n",  x);//x的内容

    printf("  &px = %p\r\n", &px);//px的地址
    printf("   px = %p\r\n",  px);//px的内容
    printf("  *px = %d\r\n\n", *px);//px的内容作为地址的内容

    printf(" &ppx = %p\r\n",  &ppx);//ppx的地址
    printf("  ppx = %p\r\n",   ppx);//ppx的内容
    printf(" *ppx = %p\r\n",  *ppx);//ppx的内容作为地址的内容
    printf("**ppx = %d\r\n\n", **ppx);//ppx的内容作为地址的内容再作为地址的内容

    getchar();
    return 0;
}

C语言中指针的地址和内容

相关文章: