问题标签 [putchar]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3286 浏览

c - 用 C 语言输出一首诗,每个单词都换行

我在 C 编程课上有一个作业,只使用函数getcharputchar. 我已经编写了大部分程序,但我不知道如何只为多个空格添加一个新行。例如,当有多个空格时,输出中有一个间隙,这是我不想要的。有谁知道如何纠正这个?

0 投票
5 回答
1754 浏览

c - 没有从 C 中的 getchar 获得正确的变量赋值

我正在编写一个简单的计算程序,但是我可以使用的唯一字符串处理函数是 getchar 和 putchar。现在我只是试图将输入中的数字分配给变量,但是当我打印变量时它是一些随机数。例如,我在控制台中输入 3,输出为 505110。任何帮助将不胜感激。谢谢你。

0 投票
2 回答
1279 浏览

c - 输出作为一个倒置的问号和提示在 C 中的计算器程序中出现两次

我正在编写一个简单的计算程序,但我无法获得任何有效的输出。我得到的只是一个颠倒的问号。此外,我在程序末尾有一个提示,询问用户是否要输入另一个计算。但是,当我输入计算时,控制台中会出现两次提示。有谁知道为什么会发生这些事情?最后,我只能使用 getchar 和 putchar 来处理输入和输出。在此先感谢您的帮助。

0 投票
1 回答
3902 浏览

c - 什么是标准输入缓冲区?

我想了解为什么被调用三次的函数与只输入一次的行一起工作。有人解释说,我们在这种情况下使用标准输入缓冲区,那是一块内存。我想读一些关于它的东西。你能给我一些资源吗?

0 投票
4 回答
247 浏览

c - 为什么这不能消除 C 中的双空格?这是 K & R 中的 getchar() 练习之一

这是一个 K&R 练习。它应该用一个空格代替双倍或更多。相反,它完全反映了输入、空间和所有内容。另外,为什么我必须在其他练习中使用 EOF (ctrl-d) 而在这个练习中使用 RETURN (Enter)?(我在 Ubuntu 上运行它,但在 mac 上使用 ssh。)

0 投票
4 回答
320 浏览

c - 在给出换行符之前,不显示输出

我正在尝试用 C 编写一个简单的“打字机”效果,其中文本一次出现一个字母,但有延迟。这是我的功能:

问题是在显示 a 之前文本实际上并没有出现\n。我究竟做错了什么?

0 投票
3 回答
1453 浏览

c - getchar() 和 putchar() 是函数还是宏?

我参考了两个可靠的信息来源,两者似乎对同一事物有不同的定义:

http://www.cplusplus.com/reference/clibr%E2%80%A6

http://www.ocf.berkeley.edu/~pad/tigcc/doc/html/stdio_fputchar.html

第一个来源说putchar()是一个函数,getchar()但在第二个链接中它说putchar()是一个宏。我的书说getchar()是一个宏。哪个是对的?

0 投票
1 回答
908 浏览

file - 在 C 中的监视器上显示文件的内容

我正在尝试重新创建我在课堂上看到的程序。老师制作了一个10行的文件,他向我们展示了文件确实创建了,然后他显示了它的内容。我的代码由于某种原因不起作用,它只是打印看起来像“=”一百万次然后退出。

我的代码:

问题是什么?据我所见,我所做的正是给出的示例中的内容。

0 投票
2 回答
478 浏览

c - 为什么我用 putchar() 打印垃圾;在这个for循环中?

我正在尝试自学 C,你可能已经听过很多次了,但我无法弄清楚我做错了什么。我正在做的练习的重点是用指定数量的空格替换制表符。它应该是对 unix 命令扩展的模仿。这是我到目前为止所拥有的:

我运行它并开始输入,按 ctrl + d 完成(因为我使用的是 GNU/Linux)并让它打印垃圾字符。我已经用另一个字符串尝试了相同的第二个 for 循环,一个在没有 if 语句的 for 循环中分配了 getchar() 的字符串,它打印非垃圾字符。我想我真的很困惑。我究竟做错了什么?

0 投票
2 回答
1677 浏览

c - C: printf() 和 putchar() 问题

我正在阅读 K&R 的书,想以我从未尝试过的方式测试 printf() 和 putchar() 函数。我遇到了几个意外事件,并想听听更有经验的程序员为什么会发生这种情况。

  1. 如何在输入流(getchar() 或 scanf() 函数)中获得 EOF(文件结尾)?getchar()/scanf() 函数无法识别的意外键会产生它吗?
  2. 在我的书中,它说 c 必须是一个整数,因为它需要存储 EOF 并且变量必须足够大以容纳 EOF 可以容纳的任何可能的字符。这对我来说没有意义,因为 EOF 是一个值为 -1 的常量整数,甚至 char 也可以存储。谁能澄清这是什么意思?
  3. 当我向 putchar() 函数发送“hello”或“hello”时会发生什么?它期望得到一个整数,但如果我发送后一个字符串或字符序列,则返回奇怪的输出,例如EEoo 。
  4. 为什么当我使用上面编写的 printf() 函数时,我得到两个输出?一个是我输入的,另一个是整数,在 ASCII 中是行尾。它是否会产生第二个输出,因为我按 Enter 键,它假定它是第二个字符?

谢谢。