首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用putchar()打印段落

使用putchar()打印段落
EN

Stack Overflow用户
提问于 2012-12-30 02:58:09
回答 6查看 1.7K关注 0票数 1

考虑以下代码:

代码语言:javascript
复制
#include"stdio.h"

void main()
{
  char ch;
  while((ch=getchar())!=EOF)
  {
    putchar(ch);
  }
}

无论我输入什么(作为一个句子),它都会在我按回车键后重复。如果我想把整段话放在最后,我该怎么做?因为putchar()只能用于返回单个字符,所以使用putchar()可以做到这一点吗?

EN

回答 6

Stack Overflow用户

发布于 2012-12-30 03:07:22

这是行不通的,因为EOF不适合char。请注意,正确的getchar()返回类型是int。请参见实例this manual page

如果你想一次读入一整行,你可以使用fgets()进入一个字符缓冲区。不过,我不确定我是否完全理解你想要实现的目标。

票数 2
EN

Stack Overflow用户

发布于 2012-12-30 03:04:39

当从文件读取时,应该使用EOF,因为文件以特殊的EOF(文件结束)结尾,character.You需要在这里使用任何标记来表示输入的结束。

这个程序很有意义,我无法想象它在任何地方的使用情况。因此,重新考虑需求,并相应地更改逻辑。

票数 1
EN

Stack Overflow用户

发布于 2012-12-30 03:11:52

希望这段代码能帮助你

代码语言:javascript
复制
char *buffer;
    int i = 255;

    buffer = (char *)malloc(i*sizeof(char));

    *buffer = getchar();
    while ( *buffer != '?' )
    {
        buffer++;
        *buffer = getchar();
    }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14084916

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档