奇怪的getc

今天特奇怪,为什么getc总是返回1呢?

while( (c=getc(stdin) !=EOF)){
    if (putc(c,stdout) ==EOF)
    perror("output error\n");
}

用gdb调试了很久都不明白
后来才突然发现,括号的顺序写错了

while( (c=getc(stdin)) !=EOF){
    if (putc(c,stdout) ==EOF)
    perror("output error\n");
}

just fine.

此博客中的热门博文

少写代码,多读别人写的代码

在windows下使用llvm+clang

tensorflow distributed runtime初窥