如何动态获取用户输入并将其存储到整数数组中

时间:2017-08-11 08:07:37

标签: c dynamic

我有一个像int a[50];这样的整数数组。现在我想将用户输入的值存储在整数数组中作为整数 问题是我不知道用户要输入的元素数量,因此我无法遍历整个数组。

因此,用户可以动态输入值并将其存储在整数数组中并显示它。

2 个答案:

答案 0 :(得分:0)

您可以使用realloc并将特定输入作为输入的结尾

int readinput(int *value)
{
    int status;
    //function returns 0 on conversion -1 if exit keywoard entered
    return status;
}


int value, *table = NULL,size = 0;
while (!readinput(&value))
{
    table = realloc(table, (size++ + 1) * sizeof(int));
    if (table == NULL)
    {
        break;
    }
    table[size] = value;
}

您可以在此处找到转换功能的示例: 我的回答中How to get Integer and float input without `scanf()` in c?

答案 1 :(得分:0)

为此,从用户那里获取数组中元素数量的输入。然后malloc记忆并将输入存储在数组中。