C/C++ 核心之一 指针与数组

关于指针,谈一点自己的认识。

(1) 指针本质上就是一个地址,指针所占的byte数目只跟系统位数有关,与指针所指向的类型无关。

(2) p+1,指针移动的byte数目直接决定于指针所指向的数据类型。因此在移动指针的时候,首先应该搞清楚p所指向的数据类型。

(3) 定义指针时,如果指向的类型为TYPE,那么就需要定义TYPE* 类型的指针。

        比较指向的类型为int*, 那么就要定义int**类型的指针

(4)指向单个元素的指针和指向多个元素的指针(数组指针)

     (4.1)如果指向的数据类型相同,所需定义的指针类型也相同。这与(3)中的描述相符合。

     (4.2)指向单个元素的指针 和 数组指针, 释放时不同。

     (4.3)初始化的方式不同,指向单个元素的指针在分配时可以直接初始化,而数组指针不可以初始化。

     例1:

       int *p1=NULL

       int *p2 = NULL;

       int n = 3;

       p1 = new int;    // 指向单个元素(无名变量)

       p2 = new int[n]  // 指向n个元素(多个变量), p2 指向该数组的定义元素

       p2++;           // p2指向了下一个元素

       delete p1;

       delete []p2;     //看到却别了吧,如果delete p2只会释放p2所指向的单个元素

       p1 = null;

       P2 =null;        //防止野指针的发生,养成好的习惯,可以预防无数的bug

       例2:

       int *p;

       classA *pA;

       classA *pB;

       int n  = 5;

       p = new int(5);   //初始化为5

       pA= new classA(paramter1, paramter2); //先分配内存,然后调用带参数的构造函数进行初始化

       PB= new classB[n];  //先分配内存,必须定义无参数构造函数(如果定义了有参数的构造函数,缺省的构造函数不会产生)

       ....

(5)二级指针

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值