在不知道将填充多少元素的情况下结束数组

时间:2015-11-01 02:19:27

标签: c

我正在读取一个非常大的CSV文件,我已经为所有数字分配了足够的空间以适应数组。但是我不知道从哪里开始弄清楚实际使用了多少空格。

计算数量远远不够,但我需要知道数字,以便我可以在末尾插入'\ 0'。另外,我知道运行一些循环需要多长时间。

您如何确定数组中实际数据的结束?

我在使用C语言。

这就是我在阅读数据的方式:

for(i = 0 ; i < 10000 ; i++){
fscanf(fp,"%[^,],%[^,],%[^,],%[^,],%[^,],%[^,],%[^,\n]",&column_1[i],&column_2[i],&column_3[i],&column_4[i],&column_5[i],&column_6[i],&column_7[i]);

}

1 个答案:

答案 0 :(得分:0)

当然。这是显而易见的。只需使用计数器变量。谢谢你的帮助!

while(!feof(fp)){
  //  if(i%)
fscanf(fp,"%[^,],%[^,],%[^,],%[^,],%[^,],%[^,],%[^,\n]",&column_1[i],&column_2[i],&column_3[i],&column_4[i],&column_5[i],&column_6[i],&column_7[i]);
i++;
}
numberEntries = i;