gpt4 book ai didi

c - 从 C 中的函数传递和返回 2 个数组

转载 作者:太空宇宙 更新时间:2023-11-04 01:32:11 26 4
gpt4 key购买 nike

我在 main 函数中有 2 个数组,一个 double 类型和一个整数类型。我想写一个函数,我们称它为“func1”,我想向它发送 2 个数组。我打算对其他两种类型做一些操作(如果需要我可以给出操作的细节),然后将这两个函数返回给我的主函数。

我明白不可能一次返回两个对象,所以我认为我必须传递和返回指针。

我试过的是:

int main (void){
...
int str2[]=...
double str3[]=...
func1 (&str2, &str3) /* Thş was the best suggestion I could find on the internet */
...
}

void func1 (int *intType, double *doubleType){
...
intType[33]=27; /* just for example */
...
return;
}

结果,我收到了很多警告,如果我运行我的程序就会崩溃。我在上面遇到了什么问题,我该如何解决?

附言我真的不知道我做错了什么而且我不是 C 的高手,看来我在传递指针方面有严重的问题所以请不要生我的气。

谢谢!

最佳答案

离你不远了

void func1 (int *intType, double *doubleType); // note: prototype

int main (void)
{
int str2[100];
double str3[100];
func1 (str2, str3); // note: no `&` on the parameters here
return 0;
}

void func1 (int *intType, double *doubleType)
{
intType[33] = 27;
doubleType[42] = 1.0;
}

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

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