美文网首页程序员码农的世界
【C++】指针传递与函数返回详解

【C++】指针传递与函数返回详解

作者: 灰常出色 | 来源:发表于2018-12-30 06:55 被阅读101次

指针变量作为参数传递给函数的时候,编译器会将这个指针变量Copy一份,也就说在函数内部使用的这个参数变量,是另外一个指针变量。

从程序的输出结果,可以看出fun()内部指针变量的地址,变成了另外一个数值。不过在fun()内部的这个指针变量所指向的内存位置并没有变化,在函数内部更改该内存位置的数值的话,fun()外部的指针变量a所对应的数值也会被改变。

从程序的输出可以看出,fun()返回的指针变量也是copy了一份到外部的指针变量b,只不过指针变量b指向的内存空间还是原来的内存空间。

总结:

通过上面的两个程序,以及其输出结果可以看出,指针变量在作为参数传递给函数的时候,与正常的非指针变量的传递方式并没有区别,都是copy一份新的变量。只不过不同的指针变量都可以指向同一块内存空间,如此一来只要指针变量指向的内存空间里面的数值更改了,那么传入参数的指针变量所对应的数值也会跟着改变。

同样的道理,函数的返回值是指针变量的也是如此。


灰子做于二零一八年十二月二十九日。

【原创内容,欢迎分享,拒绝转载,谢谢尊重!!!】

相关文章

  • C++基础

    C++ 值传递、指针传递、引用传递详解C++中引用传递与指针传递区别 引用传递和指针传递的区别 引用的规则:(1)...

  • 【C++】指针传递与函数返回详解

    指针变量作为参数传递给函数的时候,编译器会将这个指针变量Copy一份,也就说在函数内部使用的这个参数变量,是另外一...

  • C++ 引用传递的学习

    C++ 引用与引用作为函数的参数C++函数的三种传递方式为:值传递、指针传递和引用传递 C++ 上课习题 刘月林2...

  • 读书笔记17.06.02【stack】【vector】

    C++中参数传递:按值传递,指针传递和引用传递按值传递:形参是实参的拷贝。指针传递:拷贝指针,被调用函数对指针指向...

  • C指针(4):指针传递和返回数据

    指针传递和返回数据 1.交换数据 2.返回指针 3.局部数据指针 4.传递指针的指针 5.自定义free函数

  • 函数指针与返回函数指针的函数

    转载自C++:函数指针 & 返回函数指针的函数 - 简书 (jianshu.com)[https://www.ji...

  • [C指针]指针与函数:传递指针给函数、从函数返回指针

    学习笔记 《深入理解C指针》http://www.ituring.com.cn/book/1147第3章 指针与函...

  • C++将函数名作为函数参数传递:函数指针,将函数名传递进去 树的先序、中序和后序遍历方式

  • C++用const修饰函数情形解析

    1.如果给以“指针传递”方式的函数返回值加const修饰,那么函数返回值(即指针)的内容不能被修改,该返回值只能被...

  • C#中delegate与event的区别

    我们都知道delegate与C++中的函数指针类似,实现了将函数作为参数进行传递。而添加了event关键字后,编译...

网友评论

    本文标题:【C++】指针传递与函数返回详解

    本文链接:https://www.haomeiwen.com/subject/hasulqtx.html