开发者社区> 问答> 正文

C语言中引用和指针的相同和不同之处是什么?

C语言中引用和指针的相同和不同之处是什么?

展开
收起
游客3gzok77e677xw 2022-03-30 00:40:59 606 0
1 条回答
写回答
取消 提交回答
  • 相同点:

    在引用中 int &b=a;这一句代码可被编译器看做int * const b=&a;//加上const的作用是表明指针b的自身的值(a的地址)不能改变,而指向的值(a的值)可以改变。也就是说引用相当于指针,引用与指针在编译时的方法一样,指向的都是变量的内存地址。

    不同点:

    1.在定义方式中引用储存的是值,而指针是一个变量的拷贝,存储的是地址。

    2.引用只能对已经存在的变量或对象实现引用,而指针则不需要,可以定义为空。

    3.在函数的传参中,如果传递的是一个引用,意味着这个变量或对象已经存在了;如果传递的是一个指针,则不能判断这个指针是不是有效的,是不是空的,因此在函数体 中大多数都得进行指针是否为空的判断。但是虽然引用较为安全,但是利用指针来传参效率较快。

    2022-03-30 00:41:54
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载