栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++ 的传值和传地址的问题

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++ 的传值和传地址的问题

传值和传地址

测试代码:

#include 
#include
using namespace std;

//传地址
void test(int* a) {
    cout <<"指针a地址:" << a <<"  值:" << *a<< endl;
}

//传值
void test1(int a) {
    cout << "值a地址:" << &a << "  值:" << a << endl;
}

int main()
{
    int m = 10;
    int* s = &m;
    cout << "s地址:" << s << "  值:" << *s << endl;
    cout << "m地址:" << &m << "  值:" << m << endl;
    test(s);
    test1(*s);
}

运行结果:

总结
1、参数传值,函数内使用的过程是先将传过来的值拷贝出来给函数参数,此时
  的函数参数的地址和传的参数的地址不同(只是单纯的值相同)
2、参数传地址(传指针),函数参数和传来的参数的地址相同,这时改变函数参数
  的值,也会改变传来参数的值,从地址上改变值。(没有拷贝,让他们同一个地址)
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/316483.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号