首页 > 解决方案 > 将数组作为参数传递时,是与所使用的数组相同的内存空间,还是制作的副本

问题描述

考虑以下程序:

void doSomething(char array[5])
{
    char b = 3;
    array[0] = b;
    return;
}

int main()
{
    char array[5] = {0, 1, 2, 3, 4};
    doSomething(array);
    return 0;
}

我的问题是,当将数组传递给doSomething函数时,是否制作了数组的副本并占用了更多内存?还是只是简单地传递了数组的指针,并且正在修改同一个数组?

标签: c++c

解决方案


推荐阅读