c - C 程序中的奇怪输出

标签 c gcc output getchar putchar

所以我刚刚开始学习 C,如果这有什么区别的话,我正在使用 gcc,并且由于某种原因,这个简单的程序给了我奇怪的输出:

    #include <stdio.h>

    main()
    {
        int c;

        while (c == getchar() != EOF)
        {   
            putchar(c);
        }   
     }

我保存它并在 vim 中使用 :!gcc % then :!./a.out ,当我输入任何字母然后 Enter 时,它只会给我“^^”作为输出。我四处搜索,找不到其他人遇到这个问题,而且它是直接从 K&R 复制的,所以我不知道是什么导致了这个错误,有人知道发生了什么事吗?

最佳答案

Ned Stark 的答案是正确的,我有 2 个等号,这就是导致奇怪错误的原因。感谢大家的帮助! Ned,如果您想发布答案,我会将您的答案标记为正确,否则我会在两天内将其标记为正确。

关于c - C 程序中的奇怪输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20206125/

相关文章:

optimization - 有没有办法告诉 GCC 不要优化特定的代码?

python - 如何阻止用户仅输入 "()"并在此之后仅输出 "()"

c - 为什么我的程序返回相同的字符?

C 中此 fork 概念的正确输出

c - 未加前缀的字符串文字是否与带前缀的字符串文字连接?

c - C语言中如何连续添加字符串元素?

java - 使用 MinGW gcj 编译 java 代码时出错

c++ - 从 C 代码调用共享库加载器

c++ - 谁决定任何数据类型或结构的大小(取决于 32 位或 64 位)?

c - 为什么快速排序比计数排序更好?