gpt4 book ai didi

c - 将数组传递给函数

转载 作者:行者123 更新时间:2023-11-30 18:26:39 25 4
gpt4 key购买 nike

嗨,我正在尝试创建一个程序,该程序接受 7 个元素数组作为参数,并将该数组的第三个到第五个元素返回到一个较小的数组,但是我当前收到此错误

assign8p7.c: In function 'main':
assign8p7.c:18:2: warning: passing argument 1 of 'copysect' makes pointer from
integer without a cast [enabled by default]
assign8p7.c:3:6: note: expected 'int *' but argument is of type 'int'

据我所知,警告有问题,我在参数中传递一个数组有问题,有人知道我如何解决这个问题吗?也欢迎对我的代码提出任何其他建议。

#include <stdio.h>  

int *copysect(int ar[],int start,int end)
{
int i;
static int retar[3];
for(i = 0; i<3;i++)
{
retar[i+start]=ar[i+start];
}
return retar;
}

int main(int argc, char const *argv[])
{
int arry[7] = {1,2,3,4,5,6,7};
int miniarry[3];
miniarry[0] = *copysect(arry[0],3,5);
return 0;
}

最佳答案

int *copysect(int ar[],int start,int end)

好的,copysect 将一个整数数组作为其第一个参数。

miniarry[0] = *copysect(arry[0],3,5);

糟糕,您向它传递了一个整数而不是数组。

关于c - 将数组传递给函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15340634/

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