【发布时间】:2016-11-20 22:09:42
【问题描述】:
所以我想从文本文件中获取行,并提取每行中的第一个单词并保存在字符数组“op”中。我在处理第一个单词之前的空格时遇到了麻烦。文本中的第一行是“awesome sauce”,第二行是“yes”,第三行是“cool”,第四行是“yeah ok ”。处理单词yes之前的空格时遇到问题。
infile.open("vec.txt");
//define line pointer
char* line=new char[100];
char other[100];
char op[100];
int numofLines = 0;
int k = 0;
bool wordStart = false;
//get line
while (infile.getline(other,100))
{
int numofChar = k;
int numofOpChar = 0;
int r = 0;
int p = 0;
while (other[k] == ' ')
{
while (other[k] != ' ')
{
wordStart = true;
}
k++;
cout << k << endl;
}
if (wordStart = true)
{
do
{
op[numofOpChar] = other[numofChar];
numofChar++;
numofOpChar++;
}
while (other[numofChar] != ' ');
if (op[numofChar] != ' ')
{
cout << op << endl;
}
}
}
【问题讨论】:
-
是否要将文件中的所有第一个单词连接到一个字符数组 op 中?
-
不,我希望操作码数组在每个实例中每次都包含第一个单词。
-
您是否使用调试器单步执行代码?哪里出错了?
标签: c++ arrays parsing char text-extraction