gpt4 book ai didi

c++ - 为什么数组大小变得如此之大?

转载 作者:行者123 更新时间:2023-11-28 02:51:51 25 4
gpt4 key购买 nike

我一直在努力弄清楚如何将二维数组传递给函数,我想我已经弄明白了。我现在的问题是由于某种原因这个数组(见下文)从 25 增加到 100,我不知道为什么。我无法确定哪里出了问题。

#include <iostream>

void testFunc(int (&n)[5][5]) {
n[0][0] = 5;
}

int main() {
int arr3[5][5];
// The array is initialized here with all values equaling 8.
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
arr3[i][j] = 8;
}
}

testFunc(arr3); // Function is called here changing [0][0] to the value 5.
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
std::cout << arr3[i][j] << ' ';
}
std::cout << '\n' << std::endl;
}
std::cout << sizeof(arr3) << std::endl;
return 0;
}

当我尝试编写 for-loopi < sizeof(arr3)我的尺码是 100。不知道为什么。它从哪里获得该值(value)?

最佳答案

您的数组大小为 5*5 = 25int 占用 4 个字节。所以它变成了 100

关于c++ - 为什么数组大小变得如此之大?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22855183/

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