gpt4 book ai didi

c - 从c中的函数返回数组

转载 作者:行者123 更新时间:2023-11-30 15:53:44 25 4
gpt4 key购买 nike

我有点困惑。请查看以下程序:

#include<stdio.h>
void display (int *j, int *k);

int main()
{
int num1[]={1,2,3,4,5};
int num2[5];
int i;
display (num1,num2);
for (i=0;i<=4;i++)
printf("%d,", num2[i]);
return 0;
}

void display (int *j, int *k)
{
int l;
for (l=0;l<=4;l++)
{
k=j;
printf("%d,", *k);
j++;
k++;
}

}

在此 printf("%d,", num2[i]); 没有给出数组。但当我们将 *k=*j; 放入函数中时,它就会起作用。你能解释一下为什么吗?谢谢。

最佳答案

k=j 将指针k 赋给指针j 的值(指向的地址)。这会切换 k 指向的数组(num1num2),但不会更改任何数组元素的值。

*k=*jk指向的数组元素设置为j指向的数组元素的值。

关于c - 从c中的函数返回数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13528600/

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