gpt4 book ai didi

c - 从函数内部传递一个数组作为函数参数,该函数将它作为 C 中的参数

转载 作者:太空狗 更新时间:2023-10-29 17:08:44 30 4
gpt4 key购买 nike

你好!

如果我有一个函数,它接受一个整数数组作为参数,然后从该函数内部,将同一个数组发送到另一个函数,它是否仍然能够编辑数组值并将它们提交到主级别而不是函数级别?

int
main(int argc, char *argv[]) {
int A[50];
functionB(A);
}

函数 B 看起来像:

void functionB(int A[]) {
functionC(A);
}

函数 C 是实际改变 A[] 中的值的函数。

main 会看到更改后的数组还是原来的 A[]?

谢谢!

最佳答案

数组衰减为指针。所以它会修改原来的数组。

检查一下

void functionC(int A[]) {
A[0] = 1;
A[1] = 2;
}

void functionB(int A[]) {
functionC(A);
}

int
main(int argc, char *argv[]) {
int A[2]={5,5};

printf("Before call: %d %d\n",A[0],A[1]);
functionB(A);
printf("After call : %d %d\n",A[0],A[1]);
}

关于c - 从函数内部传递一个数组作为函数参数,该函数将它作为 C 中的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26436263/

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