zoukankan      html  css  js  c++  java
  • C 指针

    int a=1,*p;p=a;
    p中存放的是a的地址不是值
    *p通过存储的地址找到a的值
    定义的指针时*是定义说明符

    输出时是单目运算符 间接访问运算


    指针定义int *p

    p值的是指针变量的名字,表示指针变量指向的内存地址

    *p表示指向地址中的内容

     1 #include<stdio.h>
     2 
     3 int main()
     4 {
     5     //a地址假设为0000000
     6     int a = 1;
     7     //指针变量地址假设为0000004
     8     int* p = &a;
     9     //输出:0000000是a变量的地址
    10     printf("%p", &a);
    11     //输出:0000000通过指针变量p指向a变量的地址
    12     printf("%p", p);
    13     //输出:0000004指针变量p本身的地址
    14     printf("%p", &ap);
    15     //输出:1,是指针指向的地址中的内容,等价与输出变量a
    16     printf("%d", *p);
    17 }

    指针运算中* ++ -- 是同级运算 从右开始

    例如:

    int a,*p;

    a=*p++,先指针变量++,然后取指向地址的值,a=*(p++);

    a=*++p,先指针变量++,然后取指向地址的值,a=*(++p);

    a=--*p,先取指向地址的值,然后值--,a=(*p)--;

    a=(*p)--,先取指向地址的值,然后值--,括号里的先运算,a=(*p)--;

       

              

    本文来自博客园,作者:{繁星划过天际},转载请注明原文链接:https://www.cnblogs.com/Aliez02/p/15283549.html

  • 相关阅读:
    hrbust 1558 小背包(简单01背包)水坑
    hrbust 1174泉水(DFS深度优先搜索)
    HDU 1115
    HDU 4273
    HDU 2912
    POJ 3528
    HDU 1912
    HDU 4741
    HDU 4617
    POJ 1755
  • 原文地址:https://www.cnblogs.com/Aliez02/p/15283549.html
Copyright © 2011-2022 走看看