【发布时间】:2013-08-11 10:32:58
【问题描述】:
我需要读取一些包含大量数字 (int) 的文件。每个文件的行都不一样。
1
3
5
2
1
3
2
我必须读取其中一个文件并动态创建一个 int 数组。 我将读取文件两次,因为我无法知道文件的长度。 你知道另一种方法吗? 这就是我所做的:
int main()
{
int *array;
int tmp, count;
ifstream fin("inputfile");
while(fin >> tmp)
count++;
array = new int[count];
fin.close();
fin.open("inputfile");
int i=0;
while(fin >> tmp)
array[i++]=tmp;
delete[] array;
return 0;
}
感谢您的帮助。
【问题讨论】:
-
你可以用
std::vector,那样会更简单吗? -
有什么理由不这样做吗?您正在使用 c++。
-
我的老师还是没有解释。
-
幸运的是,下面的两个投票答案都解释了如何在这种情况下完美地使用它们。
-
@DeniseMendezGomez 那么你也不能使用
new或C 风格的数组,因为你的老师不会解释它们。其中,如果他在std::vector之前解释过,他完全没有能力教C++。
标签: c++ arrays visual-c++