有关预期表达式的问题,来自《C Answer Book》中练习 1-12

问题描述 投票:0回答:1

在 K&R,第二版,第 21 页,练习 1-12 中说:“编写一个程序,每行打印一个单词的输入。”

在使用“The C Answer Book”中的代码时,Xcode 有两行向我发出警告,称“预期表达式”。它们是第一个

if
语句,其中包含 OR 运算符;以及
putchar(\n)
表达式。

有什么想法为什么会发生这种情况吗?

如有任何帮助,我们将不胜感激!

谢谢!

#include <stdio.h>

#define IN 1    // inside a word
#define OUT 0   // outside a word

//  print input one word per line
int main(int argc, const char * argv[]) {
    int c, state;
    
    state = OUT;
    
    while ((c = getchar()) != EOF) {
        if (c == `` || c == `\n` || c == `\t`) {
            if (state == IN) {
                putchar(`\n`);  //  finish the word
                state = OUT;
            } else if (state == OUT) {
                state = IN;     // beginning of word
                putchar(c);
            } else              // inside a word
                putchar(c);
        }
    }
}
c expression
1个回答
0
投票

您在使用单引号 (

`
) 的地方使用了反引号 (
'
)

© www.soinside.com 2019 - 2024. All rights reserved.