gpt4 book ai didi

c++ - main() 和 function() 中数组的不同值

转载 作者:行者123 更新时间:2023-12-05 08:36:07 27 4
gpt4 key购买 nike

<分区>

首先抱歉我的英语不好。我在用 C++ 编码时遇到了一个奇怪的问题。

using namespace std;

void Func(int a[2][3])
{
cout <<(int) &a;
}

int main()
{
int a[2][3] =
{
{1,2,3},
{4,5,6}
};
cout << (int)&a << endl;
Func(a);
return 0;
}

我很困惑 main() 和函数 Func() 中的 &a 返回了不同的值。奇怪的是,它们之间的差总是 212。谁能解释一下?感谢您的帮助。

P/s:谢谢大家的回答,我老师说C++不允许按值传递数组,因为如果数组有100万个元素,那么仅复制所有元素就会大大降低性能他们,所以他说只允许通过引用传递。这就是让我认为这两个 &a 应该相同的原因。现在明白了,谢谢大家!

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com