以正确的顺序输出队列
outputting queues in correct order
正在输出实数或整数我正在从文件中逐个字符地阅读数字。它将读取一个整数并将其推送到 integerQueue 中,直到到达 '.',然后它将切换到将其输入到 realQueue 中。
然后当我打印时,它需要打印出来,即 真实: 123.4343
但现在输出是真实的:123。 整数 4343
不知何故,我的 while 循环或我的 if 语句没有完成它的工作。我只是找不到我的错误
问题是,如何修复我的输出以使其打印出 123.4343
//if the realQueue is empty, then we just read in an integer, currentState must be 1, in order to print integer
if(realQueue.empty() || currentState == '1')//implementation of the FSM
{
writeFile <<"Integer: ";
while(!integerQueue.empty())
{
writeFile <<integerQueue.front();
integerQueue.pop();
}
}
//since the realQueue has values in it, then it must bea real Number
else
{
//currentState = '2';
// currentState must be == '2', since wwe have a real number to print
writeFile<<"Real: ";
//currentState has to be in real mode for it to print out to file
while(!integerQueue.empty() && currentState == '2')
{
writeFile <<integerQueue.front();
integerQueue.pop();
}
// currentState has to be in real mode for it to print out to file
while(!realQueue.empty() && currentState == '2')
{
writeFile <<realQueue.front();
realQueue.pop();
}
}
尝试将这个循环提交出来,看看会发生什么。
while(!integerQueue.empty() && currentState == '2')
{
writeFile <<integerQueue.front();
integerQueue.pop();
}
相关文章:
- 递归函数计算序列中的平方和(并输出过程)
- boost::进程间消息队列引发错误
- 如何使用 < 和 > 命令获取 c++ 中的输入和输出?
- 如果我只是不访问queue_front节点的子节点,而是将它们推到队列中呢?还是BFS吗
- 请解释"函数1(p1,p2,p3);"的输出
- C++:将控制台输出存储在宏中更好吗
- 创建一个函数以在输入为负数或零时输出字符串.第一次执行用户定义的函数
- 如何在OMNET++中指定与命令行参数组合的输出文件名
- Android NDK传感器向事件队列报告奇怪的间隔
- 我的动态链接队列在同一输出流中调用时不正确地输出三个返回函数
- 相同的比较功能为C++中的排序和优先级队列提供不同的输出
- 为什么我会在数组队列程序中获得不希望的输出
- 在队列中,插入和删除后,被删除的元素也会出现在输出中.为什么
- 以正确的顺序输出队列
- 队列类C++的输出运算符重载
- C++队列,输出错误
- 队列的数组实现:奇怪的输出
- 是否QIODevice::waitForReadyRead隐式刷新输出队列(waitForBytesWritten)
- 创建动态循环队列,元素输出正常,但程序崩溃
- 遍历BST并输出到队列的前缀