【C++自我精】基础系列一 指针与引用.docx_第1页
【C++自我精】基础系列一 指针与引用.docx_第2页
【C++自我精】基础系列一 指针与引用.docx_第3页
【C++自我精】基础系列一 指针与引用.docx_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

0 前言指针、引用、指针与引用区别。1 指针变量:代码中常常通过定义变量来申请并命名存储空间,并通过变量的名字来使用这段存储空间。/变量int nNum; /声明名字为nNum的int型存储空间nNum = 100; /nNum存储值100nNum = 200; /改变nNum存储值200指针:又叫一级指针,用来指示一个内存地址的变量。对于一个类型T(int、char、folat.),T*就是指向T的指针类型,一个T*类型的变量保存了一个T对象的地址。/指针int *pNum; /定义指针pNumpNum = &nNum;/pNum指向变量nNum在内存中的地址,而不是变量本身的值200(取地址运算符&:取变量的地址。如:&nNum为取变量nNum的地址)int nNum1 = *pNum; /取指针pNum指向存储空间值200(指针运算符*:从地址中取数据。如:*pNum为从地址pNum中取值)指针变量:指针是地址,指针变量是存放地址的变量。/指针变量int *pVar = pNum;/等同int *pVar = &nNum;二级指针:指向指针变量的指针。/二级指针int *ppNum = pVar;/用一张图表示下二级指针:C是常量;B是一级指针,B的值(即C的地址)是一级指针数据;A是二级指针,A的值(即B的地址)是二级指针数据。空指针:不指向任何对象,指针变量值为NULL。指针为空的判断常常为了避免指针变量的非法使用。int *pNum = NULL;.if(NULL != pNum) .函数指针:是指向函数的指针变量。可用该指针变量调用函数,就如同用指针变量引用其他类型变量一样。函数指针声明格式:类型说明符 (*函数名)(参数)/函数minint min(int x,int y);/函数maxint max(int x,int y);/函数指针int (*pFun)(int, int);/使用函数指针调用函数int nNumMin = 1;int nNumMax = 100;int nMin = 0;int nMax = 0;pFun = min;nMin = (*pFun)(nNumMin,nNumMax);/nMin = 1;pFun = max;nMax = (*pFun)(nNumMin,nNumMax);/nMax = 100;指针函数:函数的返回值类型是一个指针类型,本质是一个函数。指针函数声明格式:类型说明符 *函数名(参数)或 类型说明符 *(函数名(参数)int *pfun(int, int);/pfun是一个指向返回值为int的函数的指针2 引用引用:是对象的别名,对引用的操作与对变量的直接操作一样。其主要用于函数参数和返回值类型,T&表示T类型的引用。引用不是数据类型,引用本身不占存储空间。int i = 100;int &j = i;/&为标识作用,非取地址3 指针与引用区别1)指针可以指向空值,引用不能。如果一个变量指向另一个对象,它可能为空,应该用指针;它不允许为空,应该使用引用。2)指针可以改变指向,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论