• 1210.1——关于指针的问题


    http://c.biancheng.net/cpp/html/71.html

     转载自C语言网

    指针--一种类型,指针类型(*);

     指针变量--指针只能指向某块地址,不能给一个常量值。 

    整形指针

    int * 

    //字符串

    char * 

    //浮点型指针

    float *

    int a = 10;

    int *p = &a;(取地址。指针类型和a是一样的 

    指针在内存占据8个字节,与类型无关 

    通过指针变量p改变a的值

    1.获取变量p的值

    2.使用*获取某个地址里面的值。

    *p = 20.即可改变源地址@a,里面a的值。

    2)获取数组的地址

    int array 【5】={1,2,3,4,5}

    printf("%p ,array") -----获取首地址

    printf("%p,&array[0]")----获取第一个元素的地址

    printf("%p ,array[0]")-----无效,因为array [0]是取值1,要用%d.

    printf("array + 1 %p ,array+ 1")   -----地址+1,地址字节是4,(array + 1 %p ,array+ 1*4字节),所以是地址+字节数

    1.常量指针

    const  int*pA = &a

    *pA = 20  ------不能改变指针指向的变量的值

    pA = &b -----可以改变指针的指向

    2.指针常量

    int *const pA = &a;

    *pA = 20-----可以改变指针指向的变量的值

    pA = &b;-------不能改变指针的指向

    3.指向常量的常量指针

    const int *const pA-------指针的指向和指向的值都不可以改变。

  • 相关阅读:
    $P5240 Derivation$
    $P2504 [HAOI2006]聪明的猴子$
    $P1194 买礼物$
    $P2690 接苹果$
    $CF1141C Polycarp Restores Permutation$
    $CF1141B Maximal Continuous Rest$
    $CF1141A Game 23$
    $P1215 [USACO1.4]母亲的牛奶 Mother's Milk$
    $luogu2375[NOI2014]$
    poj 1419 (最大独立集)
  • 原文地址:https://www.cnblogs.com/damonWq/p/5037262.html
Copyright © 2020-2023  润新知