繁体   English   中英

C语言如何从文件中输入大数据

[英]How to input large data from files in C

这是我将数据输入数组的一般方式

         for(i=1to size)
        {
            scanf(%d",&a[i]);

      }

如果有大量输入怎么办? 就像一个包含 100000 个数字和大小的文件是从终端给出的

int a[size];

你的代码有什么问题。 您通过使用一个变量为数组分配内存,该变量在您的堆栈上分配它。 如果您分配的数量超过堆栈允许的数量,那么您实现的是……堆栈溢出!

您需要使用 malloc() 在堆上分配内存。 你这样做的方法是:

int * a;
a = malloc(size*sizeof(int));

如果你想阅读更多关于 malloc 的内容、使用它的原因以及如何使用它,谷歌是你的朋友。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM