c++ - 从文件中读取整数 - 逐行

标签 c++

如何从文件中读取整数到 C++ 中的整数数组?因此,例如,此文件的内容:

23
31
41
23

会变成:

int *arr = {23, 31, 41, 23};

?

我实际上有两个问题。首先是我真的不知道如何逐行阅读它们。对于一个整数,这将非常简单,只需 file_handler >> number 语法即可。我如何逐行执行此操作?

第二个对我来说似乎更难克服的问题是——我应该如何为这个东西分配内存? :U

最佳答案

std::ifstream file_handler(file_name);

// use a std::vector to store your items.  It handles memory allocation automatically.
std::vector<int> arr;
int number;

while (file_handler>>number) {
  arr.push_back(number);

  // ignore anything else on the line
  file_handler.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
}

关于c++ - 从文件中读取整数 - 逐行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16123013/

相关文章:

c++ - 如果 bug 没有持续明显地出现,如何查看它是否仍然存在?

c++ - 如何从 C++ 中具有复杂结构的文件中有效地读取二进制数据

c++ - 无法在当前范围内定义成员

c# - .NET 三重 des 到 Windows API

c++ - 我无法在我的macOS 10.14中的任何地方编译.cpp文件,但无法编译IDE项目生成的目录(例如Xcode或CLion)

c++ - 加权有向图

c# - 无法将参数 1 从 'char [25]' 转换为 'SAFEARRAY *'

c++ - Glade/gtkmm TreeView

c++ - Cuda 实现矩阵乘法

c++ - 仅将转义序列显示为文本