问题标签 [getchar]
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.
c++ - 使用 getchar() 和 -O3 的奇怪行为
我有这两个功能
然后我将功能更改为:
这两个函数都由外部代码调用,两个程序的代码是相同的,只是更改 getchar() 我得到了这两个不同的输出。这是可能的还是我的代码中确实有问题?
谢谢
这是我使用 GDB 得到的输出**
对于第一个代码
对于第二个代码
c - 如何模拟 EOF?
我目前正在阅读 K&R 的书并输入第一部分的示例,其中有几个示例如下:
我正在 Windows 机器上测试这些示例,从而从cmd
提示符运行编译的 exe 文件。
为了测试上面的例子,我如何模拟一个EOF
?也就是说,基本上如何在命令提示符下测试示例时使循环停止?
c - 为什么 getchar() 不等我在 scanf() 之后按回车?
我正在学习 C,我正在使用“getchar()”来停止命令窗口,这样我就可以看到正在做的练习,但它只是不起作用。这是一个样本:
这是输出:
- 选项1。
- 选项 2。
- 选项 3。
- 出口。
做一个选项:1
您选择了选项 1。
进程返回 0 (0x0) 执行时间:3.453 s
按任意键继续。
为什么不等待“getchar()”的输入?
c - C语言中的EOF问题
我正在编写一个程序,它应该读取两个可以包含换行符和各种其他字符的字符串。因此,我使用 EOF(Ctrl-Z 或 Ctrl-D)来结束字符串。
这适用于第一个变量,但是对于第二个变量,这似乎是有问题的,因为显然某些东西卡在输入缓冲区中并且用户无法输入任何内容。
我试图用while (getchar() != '\n');
几个类似的变化来清理缓冲区,但似乎没有任何帮助。所有的清理尝试都导致了一个无限循环,如果不清理,添加第二个变量是不可能的。
这两个变量的字符都是在这样的循环中读取的:while((c = getchar()) != EOF)
,这表明它是我卡在缓冲区中的 EOF。或者它是否以其他方式影响程序的行为?我使用的逻辑有问题吗?
在为此苦苦挣扎了几个小时后,我开始变得有些绝望。
代码:
c - 如何避免使用 getchar() 按 Enter 键仅读取单个字符?
在接下来的代码中:
我必须按Enter打印我输入的所有字母getchar
,但我不想这样做,我想做的是按下字母并立即看到我介绍的字母重复而不按Enter。例如,如果我按下字母“a”,我想在它旁边看到另一个“a”,依此类推:
但是当我按'a'时什么也没有发生,我可以写其他字母并且副本仅在我按时出现Enter:
我怎样才能做到这一点?
我正在使用cc -o example example.c
Ubuntu 下的命令进行编译。
c - 如何让程序使用 getchar 运行?
我是一个总 C n00b 试图自学 C 关闭 K&R。我的问题有点令人尴尬。好的,这里是:我无法让程序使用 getchar 来提供我期望的那种输出。如果你碰巧手头有 K&R,我会坚持练习 1.13。问题是,“编写一个程序来打印其输入中单词长度的直方图。”由于我遇到的这个问题,我什至无法处理水平版本。
我在 XP 上使用 Dev-C++(mingW 编译器)并在命令行下运行程序。我的问题是,当我尝试运行我的程序时,它会等待我输入要扫描的字符,但是当我完成输入并按 Enter 时,它什么也没做。我希望它能够按照我的预期继续打印直方图。实际上,它甚至似乎都没有计算字长,因为正如您在代码中看到的那样,当我尝试打印 ctr 数组中的内容以查看它是否包含任何内容时,什么都不会打印。
我太n00b了,我不知道是我的代码还是命令行有问题。但我怀疑这是系统的问题,因为当我尝试编译和运行模型程序时,也会发生同样的事情。输入输入,按 Enter,没有任何反应。如果我 Ctrl-C,有时它会吐出一两个星号,看起来与模型输出完全不同。其他时候,它什么也不做(只是回到提示符)。
这是我的练习代码。我花了一整天的时间在这上面,并质疑我继续编程的能力。如果有人能把我从这个洞里救出来,我真的非常感激!
另外,我对上面提到的模型程序还有另一个问题,但我认为我应该将其发布在它自己的问题中。谢谢大家:)
c - C - 循环中的getchar()?
如何在循环中使用 getchar()?我现在有...
但它不起作用......如果n_players是3,它只在最后执行getchar 2次......
getchar 跳过第一个循环
c - getchar() 和 putchar()
在示例中:
我不太明白。putchar() 会将字符输出,但为什么在 EOF 之后它会输出所有字符,它在哪里记住所有这些字符?谢谢。
c - getchar() 并计算 C 中的句子和单词
我正在创建一个程序,它遵循某些规则来计算给定文本文件中的单词、音节和句子。
句子是由以 . 结尾的空格分隔的单词的集合。或者 !或者 ?不过,这也是一句话:
我使用这个程序的方法是使用 getchar() 一次扫描一个字符的文本文件。我被禁止使用内存中的整个文本文件,它一次必须是一个字符或单词。
这是我的困境:使用 getchar() 我可以找出当前字符是什么。我只是在循环中继续使用 getchar() 直到找到 EOF 字符。但是,如果句子末尾有多个句号,它仍然是一个句子。这意味着我需要知道我正在分析的那个之前的最后一个字符是什么,以及它之后的那个。根据我的想法,这将意味着另一个 getchar() 调用,但是当我去扫描下一个字符时会产生问题(它现在跳过了一个字符)。
有没有人建议我如何确定上述句子确实是一个句子?
谢谢,如果您需要澄清或其他任何事情,请告诉我。
c - 如何将我的代码转换为使用 getchar() putchar() 而不是使用 scanf() 和 printf() 进行 I/O?
我需要使用 getchar(), putchar() 进行 I/O。我的程序工作得很好,但我不能像在 CodeWarrior 中那样使用它来用于嵌入式系统。我还需要摆脱 malloc() 并只使用堆栈进行弹出/推送。strtol
如果我不再使用scanf,我还能使用吗?
这就是我到目前为止的 int 模式: