c - 将数组从函数传递到 main

标签 c arrays function

<分区>

如何在 C 中将数组从函数传递到 main?

#include<stdio.h>
int merge(int a[],int b[])
{
    int i=0;
    int j=0;    
    int k=0;
    int c[17];
    while(i<10&&j<8)
    {
        if(a[i]<b[j])
        {

            c[k]=a[i];
            i++;
        }
        else
        {
            c[k]=b[j];
            j++;
        }
        k++;
    }
    while(i<10)
    {
        c[k]=a[i];
        i++;
        k++;
    }
    while(j<10)
    {
        c[k]=b[j];
        j++;
        k++;
    }
    return c;
}

最佳答案

一个解决方案是采用三个数组参数:

void merge(int a[], int b[], int c[]);

然后你可以合并ab并将结果放入c。调用该函数的人负责创建用作 c 的数组,使其足够大。

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

相关文章:

c - 编程器错误

iOS核心数据: Fetch child Magical Record data

python - 在 Python 中定义函数时如何调用列表?

python - 如何处理许多几乎相同的 if 语句?

c - 如何在 C/C++ 中传递对二维数组的引用?

c - 当我从主集中删除 fds 时,为什么需要在 select 调用中更新 nfds?

ios - 核心数据谓词 - 检查数组中的任何元素是否与另一个数组中的任何元素匹配

javascript - JQuery Canvas drawImage() 不工作

c - 具有有限缓冲区的生产者/消费者

php - 根据键值比较两个数组