如何让getc()除了笑脸之外还返回一个字符?

I am trying to write a simple 'cat' clone in C. I'm running Windows 7 and using the MinGW compiler. However, whenever I run the program, it returns the text file but with each character replaced with a '☺' character. Thank you in advance.

#include <stdio.h>

int main(int argc, char *argv[])
{
    int i;
    FILE *fp;
    int c;

    for(i = 1; i < argc; i++)
    {
        fp = fopen(argv[i], "r");

        if(fp == NULL)
        {
            fprintf(stderr, "cat: can't open %s\n", argv[i]);
            continue;
        }

        while((c = getc(fp) != EOF))
        {
            putchar(c);
        }

        fclose(fp);
    }

    return 0;
}

#0

Since relational equal test (!=) has greater precedence than assignment (=) you'll just store 1 in c at every iteration. Put otherwise, one of the brackets is in the wrong place.

while((c = getc(fp) != EOF))
                          ^
{
        putchar(c);
}

Right:

while((c = getc(fp)) != EOF)
{
        putchar(c);
}

推荐文章

将“class1:interface1”类型的属性定义到另一个接口

将“class1:interface1”类型的属性定义到另一个接口

推荐文章

Javascript div弹出窗口在IE9标准中不工作,但在其他模式中工作

Javascript div弹出窗口在IE9标准中不工作,但在其他模式中工作

推荐文章

将Rails生产日志输出到RSS提要、第三方web应用程序等。?

将Rails生产日志输出到RSS提要、第三方web应用程序等。?

推荐文章

CSS位置:固定

CSS位置:固定

推荐文章

extjs4 mvc中基于事件编程的代码重用

extjs4 mvc中基于事件编程的代码重用

推荐文章

选择状态后使用notifyDataSetChanged更新城市微调器

选择状态后使用notifyDataSetChanged更新城市微调器

推荐文章

为什么rvalues没有地址?

为什么rvalues没有地址?

推荐文章

错误:文件网站地图XmlSiteMapProvider所需的不存在。

错误:文件网站地图XmlSiteMapProvider所需的不存在。

推荐文章

MPI应用程序中的CPU使用率百分比

MPI应用程序中的CPU使用率百分比

推荐文章

php的DST设置(Codeigniter)

php的DST设置(Codeigniter)

推荐文章

编写可伸缩web应用程序/web服务的书

编写可伸缩web应用程序/web服务的书

推荐文章

如何将时间与当前日期和时间进行比较?

如何将时间与当前日期和时间进行比较?

推荐文章

将SQL Server[MDF]数据库复制/同步到CE数据库[SDF]

将SQL Server[MDF]数据库复制/同步到CE数据库[SDF]

推荐文章

Jquery部门选项:选定问题

Jquery部门选项:选定问题

推荐文章

使用mysql的php轮询程序

使用mysql的php轮询程序

推荐文章

PHP CURL post返回结果,但我需要空结果

PHP CURL post返回结果,但我需要空结果