指针

作者: NextStepPeng | 来源:发表于2018-04-28 13:56 被阅读0次

指针

  • 指针自增、自减的结果,其实就是指针指向的数据类型宽度决定的!
  • 指针加上或减去一个整数的结果,其实就是指针指向的数据类型宽度决定的!
  • 指针求差,得到的结果是整形,其结果和指针指向的数据类型宽度有关!
  • 这也就是指针的特点! 它的运算单位 是数据类型的宽度!

指针的宽度

//指针宽度
void funcP(){
    int b;
    int* a;
    printf("a:%lu,b:%lu",sizeof(a),sizeof(b));//a:8,b:4
}

指针的加法(注意对比打印结果)

void funcA(){
    int *a;
    a = (int *) 100;
    a++;
    
    int * b;
    b = (int *) 100;
    b = b + 2;

    printf("a:%d,b:%d",a,b); // 104 108
    printf("a:%p,b:%p",a,b); // a:0x68,b:0x6c  16进制
    
    char* *c;
    c = (char**) 100;
    c++;
    printf("c:%d",c);//108
}

指针的减法

//指针的减法
void funcM(){
    int *a;
    a = (int *) 100;
    a--;
    
    int * b;
    b = (int *) 100;
    b = b - 2;
    
    printf("a:%d,b:%d",a,b); // 104 108
    printf("a:%p,b:%p",a,b); // a:0x68,b:0x6c  16进制
    
    char* *c;
    c = (char**) 100;
    c--;
    printf("c:%d",c);//108 指针的指针8个字节
    
    int x = b - a;
    int y = a - b;
    printf("x:%d,y:%d",x,y);//x:-1,y:1 //加记得乘以宽度  减记得 除以宽度
    
    //比较大小
    if (a > b) {
        printf("a>b"); //
    }else {
          printf("a<b");
    }
    
}

注意 指针初始化后必须赋值

//指针赋值
void funcX(){
    
    int b = 100;
    int* a = &b;
    *a = 200;
    
    printf("b:%d,a:%d",b,a);
    
}

汇编代码(指针相关)

代码:

// 指针的汇编
void funAs(){
    int* a;
    int b = 10;
    a = &b;
    
    printf("hi");//调试使用
}

汇编及分析


汇编及分析.png

相关文章

  • 混淆知识点

    1、指针数组&数组指针、常量指针&指针常量、函数指针&指针函数 数组指针&指针数组 数组指针的定义 int (*p...

  • C语言

    C 指针、指针变量、函数指针、指针函数、指针数组、数组指针、C 数组

  • 指针

    普通指针指针的指针 数组指针 函数指针

  • 函数指针

    概念: 指针函数, 函数指针, 指针数组, 数组指针, 指向数组的指针, 指向函数指针数组的指针。

  • C:函数指针的坑

    关于该死的函数指针和指针函数 先来个目录 常量指针、指针常量 数组指针、指针数组 函数指针、指针函数 1、先看第一...

  • C 语言指针

    指针类型:指针的读取长度,指针的读取方向(大小端) 空指针,无类型指针,野指针 常量指针,指向常量的指针 http...

  • 二、C语言基础

    A、指针 指针的概念:指针变量 和 指针 的区别 ?答:指针变量是指针的标记,也可以通过指针变量的标记操作指针内存...

  • 王道程序员求职宝典(十一)指针与引用,树

    指针与引用 指针声明typedef别名类型检查void*指针指向指针的指针函数指针typedef简化函数指针定义初...

  • NDK02

    指针 指针概念 1 .指针变量和指针的区别?答: 指针变量是定义指针的标记,指针就是指向的内存地址。2 .函数指针...

  • 12 C指针

    1、指针定义 2、指针进阶 3、指针使用 4、多级指针 4、指针和数组 5、指针和字符串 6、高级指针之和指向函数的指针

网友评论

      本文标题:指针

      本文链接:https://www.haomeiwen.com/subject/rdwjlftx.html