- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
运行以下代码时,读取的行数将少于实际行数(如果输入文件本身是 main 文件,否则)这是为什么?我该如何改变这个事实(除了只加 1)?
#include <fstream>
#include <iostream>
#include <string>
#include <vector>
using namespace std;
int main()
{
// open text file for input
string file_name;
cout << "please enter file name: ";
cin >> file_name;
// associate the input file stream with a text file
ifstream infile(file_name.c_str());
// error checking for a valid filename
if ( !infile ) {
cerr << "Unable to open file "
<< file_name << " -- quitting!\n";
return( -1 );
}
else cout << "\n";
// some data structures to perform the function
vector<string> lines_of_text;
string textline;
// read in text file, line by line
while (getline( infile, textline, '\n' )) {
// add the new element to the vector
lines_of_text.push_back( textline );
// print the 'back' vector element - see the STL documentation
cout << "line read: " << lines_of_text.back() << "\n";
}
cout<<lines_of_text.size();
return 0;
}
最佳答案
您的代码是正确的。这是一个可能有帮助的小测试用例:
void read_lines(std::istream& input) {
using namespace std;
vector<string> lines;
for (string line; getline(input, line);) {
lines.push_back(line);
cout << "read: " << lines.back() << '\n';
}
cout << "size: " << lines.size() << '\n';
}
int main() {
{
std::istringstream ss ("abc\n\n");
read_lines(ss);
}
std::cout << "---\n";
{
std::istringstream ss ("abc\n123\n");
read_lines(ss);
}
std::cout << "---\n";
{
std::istringstream ss ("abc\n123"); // last line missing newline
read_lines(ss);
}
return 0;
}
输出:
read: abc
read:
size: 2
---
read: abc
read: 123
size: 2
---
read: abc
read: 123
size: 2
关于c++ - 为什么 vector.size() 一行读得太少了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2694642/
我正在尝试将之前使用 serial->write... 函数从 GUI 读取的 7 个变量发送到我的微 Controller 。 我在我的微 Controller 上写了一个小程序,如果有输入,它就会
我正在通过制作一个通用的 List 来学习继承类(class)。 List可以是 Unordered列表,Ordered列表,一个 Stack , 或 Queue . 我的 List类看起来像这样:
我必须使用非科学(即无尾数/指数/E)字符串转换十进制数。我的代码如下所示: /*! \brief Converts a XML Schema Decimal */ char *ToDecimal(d
private static void Main(string[] args) { for (;;) { TemporaryCityTool.TemporaryCity
我在 YARN 集群 (HDP 2.4) 中使用 Spark,设置如下: 1 个主节点 64 GB RAM(50 GB 可用) 24 核(19 核可用) 5个从节点 每个 64 GB RAM(50 G
这是我使用 powershell 脚本的第一天我正在尝试使用 VMM Cmdlet Get-SCVirtualMachine当我像 这样使用它时它工作正常 PS C:\> $VM = Get-SCVi
我决定在 RubyMine 7.1.4 中使用远程 Ruby SDK。 设置了 Vagrant 机器( hashicorp/precise32 ),RVM、Ruby 2.2.1p85(2015-02-
我在 sklearn 上使用 Xgboost 实现进行 kaggle 竞赛。但是,我收到此“警告”消息: $ python Script1.py /home/sky/private/virtualen
我是一名优秀的程序员,十分优秀!