错误检查未正确显示

Error checking not being properly displayed

在调试了几天之后,我找不到下面的代码在打印错误检查时创建额外空格的原因 ("expecting or missing")。例如,当我 运行 这些符号中的每行一个一个地排列时。

前两行没问题,但第三行输入会在错误的位置进行错误检查。但其期望的符号是正确的(<)。当我在代码底部删除对重置函数的调用时,第三行输入的错误检查将在正确的位置,但它期望的符号不正确:{ 。很可能是因为堆栈尚未从上一行输入中重置。

我对打印空格的增量值和 char 数组本身的大小进行了打印语句,但数字是正确的。罪魁祸首可能是我所做的重置功能,但角色重置正常。唯一的问题是在打印错误检查时输出会产生额外的空格,这会导致在错误的位置显示错误检查。

您需要在 while 循环中将 check1check2 重置为 false。否则,当 运行 第二种情况之后的第三种情况时,它包含额外的白色 space 导致错误的偏移量。