我有一个程序我必须使用我不熟悉且不太了解的散列来编写。现在我无法计算我正在阅读的单词之间的空格,如果它是一个字母,它被一个空格分隔,一旦代码生成一个单词,它在被读入时被两个空格分隔。我的解码功能工作正常,但我不知道如何计算空间。这是我尝试过的一件事,但它不起作用,任何帮助都会很棒。
string tmp;
MORSE TABLE[20];
int j = 0, f = 0, k = 0;
char x;
while(!infile.eof())
{
infile >> tmp;
infile.get(x);
if(x == ' ') //check if x is a space
{
infile.get(x); //read next character
if(x == ' ') //check and see if next char is a space
{
TABLE[k].insert(' '); //insert space into char array for printing
}
}
if(j >= f) //if true create new object
{
k++; f+=100;
}
TABLE[k].decode(tmp);//pass in string to decode
j++;
}//end while loop
任何帮助将不胜感激。我不是一个非常高级的 C++ 人,只是一个新手。