• 手机版

    扫码体验手机版

  • 微信公众号

    扫码关注公众号

国内首家协议开发

软芯音视解码保护平台

在线
客服

发布
需求

在线
聊天

天盟
APP

天盟APP下载

关注
微信

微信扫一扫访问
顶部

求大神,指针的一些具体介绍

我是大二的学生,只学过C#,现在在接触Java,上课老师提到了指针,而我不懂。我搜索指针,发现它跟C++关系挺近,但是没学过,看不懂大神们可以简单呢介绍一下么??
谢谢

免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。

版权声明:作者保留权利,不代表天盟立场。

使用道具 举报

全部参与1

C和C++中都有指针。指针中保存的就是内存地址。
比如:
inta=10;//定义一个整型变量a,其初值为10int*p=&a;//定义一个可保存int类型地址的指针p,且令p指向变量a的地址(&a是取a的地址)通常 p 被叫做指向a的指针。而通过指针可以操作被指向的对象:

在使用指针(而不是定义指针)时, *p 就代表其所指的对象,这被称为解引用(dereference)指针。 这样 *p = 20; 就是向p所指的对象赋值20,相当于写下 a = 20。
指针可以用在非常多的地方,举一例:你要知道C/C++中的普通类型都是值类型(value),变量之间相互赋值就是将变量中的内容完整地拷贝过来。 当变量很大(拷贝成本很高)时,程序中传递变量值就是一件很低效的事,那么只传递变量的地址(就是其指针)就能消除很多拷贝成本。
总之,指针的存在使得C/C++可以直接操作内存,而在语义上,让C/C++拥有了引用(reference)语义


Java中虽然没有“指针”类型,但你可以认为Java中到处都存在“指针”:本质上,Java中的变量都是引用语义(从语义角度,Java并没有真正的值类型),而指针在语义层面就代表了引用。
Java是更纯粹的面向对象语言,仅保留了引用语义;而C/C++这种更偏向底层的语言,既拥有值语义还拥有引用语义,指针就是引用语义的具体形式。


我猜,你们老师提到指针就是要表达这个意思。

使用道具 举报

发新帖

发布任务需求已有1031289位用户正在使用天盟网服务

发布分类: *
任务预算: *
需求内容: *
手机号码: *
任务商家报价为
  • 预算价 :
  • 成交价 :
  • 完工期 :
  • 质保期 :

* 最终任务项目以服务商报价、双方协商为准!