首先,抱歉英语不好。好吧,我正在尝试读取 .OBJ 文件的值(请参见此处)并使用此程序将它们存储在变量中:
#include <iostream>
#include <fstream>
#include <string>
#include <sstream>
using namespace std;
int main()
{
string line;
string v, valuesX[8], valuesY[8], valuesZ[8];
int n = 0;
ifstream myfile ("cubo.obj");
while(!myfile.eof())
{
getline (myfile,line);
if (line[0] == 'v')
{
myfile >> v >> valuesX[n]>> valuesY[n]>> valuesZ[n];
cout << valuesX[n] << "\t" << valuesY[n] << "\t" << valuesZ[n] << endl;
n++;
}
}
return 0;
}
该文件只是一个简单的立方体,由 Blender 导出。我希望他向我展示所有以“v”开头的行,但结果只显示了奇数的“v”行。当我直接读取变量“line”的值时,结果是一样的。但是,当我删除为变量“value”赋值的行并直接读取变量“line”时,程序完美运行。有谁知道向我解释发生了什么?为什么程序忽略偶数行?