zoukankan      html  css  js  c++  java
  • 指针

    一.指针本质

    和普通的Int float一样也是数据类型,等同于unsiged int为四个字节

     二.结构体指针

     

    结构体指针的正确两种正确使用:

    1.为结构体指针申请变量使其可以用指针操作这个变量里面的值

    2.已经有个结构体变量,则可以只申请相同结构体类型的指针(不用为其申请空间),然后用这个指针操作那个变量

    总结一下:指针要操作,必须要有操作的东西(不要只是一个指针就对这个指针里面的东西操作,可能里面根本就没有)

    典型错误使用:

     本以为会打印出00000000,但是这里的list->headNode根本还没指向申请了空间的headNode,所以更改为:

    结构体不同的赋值和访问方式:

     三.函数指针

    函数名就是首地址

     因为函数名可以是地址,因此可以用指针来保存

    再加上调用

     四.野指针

    两类:指向被销毁;指向没权限(系统或其他程序正在使用)

    理解free(p):p为指针,*p为取所指向地方的值,free(p)是销毁p所指向的地方

          p中的地址保持不变,只是指向了一片废墟。所以,free(p)后应该

         将p置空p=NULL避免野指针

    五:数组中的指针

    数组名和数组的第一个元素地址就为数组的地址

     因为存在地址,就可以用指针访问元素

     理解一下这里的p[2],因为a等同于地址并将它赋给了指针p,所以这里的p[2]可以

    看做a[2]。

    六.字符串中的指针

    字符串是一个常量,类似于一位数组(一位数组的名字也是一个常量,无法改变其位置,没法进行加减)

     字符串中元素访问

     注意:字符串的特殊之处,是一个常量(一位数组可以,因为只是名字是常量)

  • 相关阅读:
    SpriteKit改变Node锚点其物理对象位置不对的解决
    亲热接触Redis-第二天(Redis Sentinel)
    Java设计模式(二)-单例模式
    Android—构建安全的Androidclient请求,避免非法请求
    自己主动化測试使用mybatis更新数据库信息实例
    UML回想-通信图
    第十六课 数组的引入 【项目1-5】
    被这个样式惊醒
    netty自定义解码器
    解决netty客户端接收报文不完整的情况
  • 原文地址:https://www.cnblogs.com/miaobo/p/12427599.html
Copyright © 2011-2022 走看看