C++的数组传递进函数时,明明是值传递,为什么还是会对原来的数组产生改变?

2025-01-07 03:34:46
推荐回答(3个)
回答1:

你传进去的是数组,其实数组相当于指针,数组名就是这些元素的首地址,所以相当于你传了一个指针!当然会对数组产生改变!

回答2:

#include
using namespace std;
void setArray(char s2[])
{
s2[0]='h';
}
int main()
{
char s[]="Hello world";
setArray(s);
cout<}
是这样吗?

回答3:

传的什么都不会变的啊
setarry只是在函数内部操作
你要想改变要么就地址传或者引用传值