使用 C ifstream 从文本文件读取整数
处理包含可变长度整数行的文本文件时,标准行读取惯用法被证明是有用的:
<code class="cpp">#include <fstream> #include <sstream> #include <string> #include <vector> std::ifstream infile("thefile.txt"); std::string line; while (std::getline(infile, line)) { std::istringstream iss(line); int n; std::vector<int> v; while (iss >> n) { v.push_back(n); } // do something useful with v }</code>
这种方法使用 getline 读取每一行,使用 istringstream 解析每一行中的整数。
或者,更简洁的单行解决方案使用 for 循环和保留辅助模板:
<code class="cpp">for (std::string line; std::getline(std::cin, line); vv.push_back(std::vector<int>(std::istream_iterator<int>(std::stay(std::istringstream(line))), std::istream_iterator<int>()) ) ) { }</code>
两种方法都可以有效地解析输入文本文件中的可变长度整数序列。
以上是如何从 C 中具有可变长度行的文本文件中读取整数?的详细内容。更多信息请关注PHP中文网其他相关文章!