getchar相关内容

在C中将值存储在int中与从getchar函数返回的char中的区别

在阅读Dennis Ritchie的书时,我发现将getchar()函数在C中返回的值存储在整型变量中比存储在字符型变量中更好。声明的原因是字符类型变量不能存储EOF的值。在实际实现时,将返回存储在char类型变量中并不困难。而getchar()函数最初返回的是字符还是字符的ascii值? 推荐答案 EOF的值始终定义为-1。 这很好用,因为所有ASCII代码都是正的,所以它不可 ..
发布时间:2022-07-15 09:00:45 其他开发

为什么 getchar() 不等我在 scanf() 之后按回车?

我正在学习 C 并且我正在使用“getchar()"来停止命令窗口,以便我可以看到正在做的练习,但它不起作用.这是一个示例: #include 主函数(){整数值;printf("1.选项1.\n2.选项2.\n3.选项3.\n4.退出\n\n做一个选项:");scanf("%d", &value);开关(值){情况1:printf("你选择了选项 1.");休息;案例2:pr ..
发布时间:2022-01-31 10:15:48 其他开发

getch() & 等价于什么?Linux中的getche()?

我在 Linux 中找不到 conio.h 的等效头文件. getch() & 有什么选项吗?getche() Linux 中的函数? 我想制作一个 switch case 基本菜单,用户只需按一个键 &进程应该向前推进.我不想让用户在按下他的选择后按下 ENTER. 解决方案 #include #include 静态结构 termios ..
发布时间:2022-01-31 09:53:11 服务器开发

在不使用 c99 标准的情况下使用 bool 编译 c 代码

我尝试使用 C 中的 bool 变量编译代码,并且包含了 stdbool 标头,但是当我编译它时,我没有指定我想用 c99 标准编译它(所以它被编译了使用 ANSI C 标准),但它仍然有效.我想知道为什么会这样?这是代码: #include #include int main() {字符名称[20];printf("你叫什么名字?");获取(名称);pr ..
发布时间:2022-01-19 17:52:39 其他开发

getchar() 为向上和向下箭头键返回相同的值 (27)

所以对于键盘上的向上键,我得到 27,令人惊讶的是,对于向下键,我也得到 27.我需要我的程序在向上和向下键上表现不同,我似乎无法弄清楚.我正在使用 Linux,并且需要它在 Linux 上工作. #include #include #include #include 主函数(){int c = getchar();如果 ..
发布时间:2022-01-13 22:31:53 其他开发

如何对涉及 IO 的 c 函数进行单元测试?

我在为涉及 IO 操作的 C 函数编写单元测试时遇到问题.例如,下面是我编写的从控制台获取用户输入字符串的代码.我不知道如何使用 getchar() 函数自动测试用户输入. char * GetStringFromConsole(){字符 *strToReturn = NULL;int len = 128;strToReturn = (char*)malloc(len);如果(strToRetu ..
发布时间:2022-01-04 08:45:58 其他开发

关于 getchar() 循环如何在内部工作的困惑

我在下面包含了一个使用 getchar() 的示例程序,以供参考(不是任何人都可能需要它),如果您愿意,可以随时解决有关它的问题.但我的问题是: 当程序调用getchar()时到底发生了什么? 这是我的理解(请澄清或更正我): 调用 getchar 时,它会检查 STDIN 缓冲区以查看是否有任何输入. 如果没有任何输入,getchar 就会休眠. 唤醒后,getchar 会 ..
发布时间:2022-01-04 08:29:35 其他开发

不使用c99标准用bool编译c代码

我尝试在 C 中使用 bool 变量编译代码,并且我已经包含了 stdbool 头文件,但是当我编译它时,我没有指定我想用 c99 标准编译它(所以它被编译ANSI C 标准),但它仍然有效.我想知道为什么会这样?这是代码: #include #include int main() {字符名称[20];printf("你叫什么名字?");获取(名称);printf("很高兴认识你 %s.\n", ..
发布时间:2021-12-26 18:24:12 其他开发

在 while 循环中等待在 C 中按 Enter 键?

我正在编写一个 C 程序,我需要等待用户按任意键才能继续.当我使用 getchar(); 时,它会等待按下 Enter 键.但是当我在 while 循环中使用它时,它不起作用.如何让我的代码等待按下任何键以继续循环? 这是我的代码示例.我使用的是 GNU/Linux. #include #includeint main(){int选择;而(1){printf("1.创建列车\n");pri ..
发布时间:2021-12-26 18:09:07 其他开发

在 while 循环中使用 getchar()

#include 主要的(){国际 c ;而 ((c = getchar()) != EOF){int isEOF = (c==EOF);printf("是 %c EOF: %d ", c, isEOF);}} 为什么这里的每个输入字符都会调用 printf() 方法两次? 如果我输入'a',我得到的结果就像 E:\C_workouts>gcc CharIO.c -o CharIO.ex ..
发布时间:2021-12-26 18:01:29 其他开发

为什么 Ctrl-Z 不会触发 EOF?

为什么Ctrl+Z不触发循环完成下面的小程序? #include 主要的(){国际 c;而 ((c = getchar()) != EOF){//没有什么}返回0;} 如果我输入:test^ZEnter,它不会退出循环. 我在(此处和这里) 但没有为 Windows 下的 C(不是 C++)解释它. 注意:我在 Windows 8.1 上使用 Visual Studio 2015 ..
发布时间:2021-12-22 18:24:26 其他开发

类似于 getchar 的功能

是否有类似于 C 的 getchar 的 Go 函数能够处理控制台中的 Tab 按下?我想在我的控制台应用程序中进行某种完成. 解决方案 C 的 getchar() 示例: #include 无效主(){字符 ch;ch = getchar();printf("输入字符为:%c",ch);} 等效: 包主进口 (“bufio"“fmt"“操作系统")功能主(){读者 := bufio ..
发布时间:2021-12-11 23:08:04 其他开发

为什么 getchar() 在 scanf() 之后不等我按回车键?

我正在学习 C,我正在使用“getchar()"来停止命令窗口,所以我可以看到正在做的练习,但它不起作用.这是一个示例: #include int main(){整数值;printf("1.选项1.\n2.选项2.\n3.选项3.\n4.退出\n\n做一个选项:");scanf("%d", &value);开关(值){情况1:printf("你选择了选项1.");休息;案例2:printf("你 ..
发布时间:2021-12-02 08:10:58 其他开发

什么是等价于 getch() &Linux 中的 getche() ?

我在 Linux 中找不到 conio.h 的等效头文件. getch() 是否有任何选项 &getche() Linux 中的函数? 我想制作一个 switch case 基本菜单,用户只需按一个键就可以给出他的选项 &进程应该向前推进.我不想让用户按他的选择后按 ENTER. 解决方案 #include #include 静态结构 termios 旧的,当前的;/* 初始化 ..
发布时间:2021-12-02 00:03:50 服务器开发

如何避免使用 getchar() 按 Enter 键仅读取单个字符?

在下一个代码中: #include int main(void) {国际 c;而 ((c=getchar())!= EOF)putchar(c);返回0;} 我必须按 Enter 打印我用 getchar 输入的所有字母,但我不想这样做,我想做的是按信,并立即看到我介绍的字母重复而无需按 Enter.例如,如果我按下字母“a",我想在它旁边看到另一个“a",依此类推: aabbccddeef ..
发布时间:2021-12-01 23:51:32 其他开发

使用 getchar 输入字符串

我试图将一个字符串读入一个由用户选择的长度的字符数组.问题是 getchar() 不会停止阅读,直到用户根据我的代码按 Enter 手动输入换行符.我已经阅读了其他人的帖子,我明白为什么我不能这样做,这与我的作业讲义完全矛盾. int chPrompt(int nchars);void strInput(char str[], int nchars);int main(void) {int nc ..
发布时间:2021-09-24 20:21:39 其他开发

忽略返回值:'scanf'(关闭)

我正在用 C 编写程序,这是我的功能之一: void group3(){字符选择[5];printf("\n详细信息等");printf("\n如果您想订阅,请确认是/否:");scanf(“%s", 选择);如果(选择==“是")printf(“好");别的{printf(“好吧.");主要的();}} 但是当我尝试编译和调试程序时,出现了一个名为“忽略返回值:'scanf'"的警告.出现. ..
发布时间:2021-09-22 18:38:39 其他开发

getchar 在 switch case (c) 中不起作用

使用一个非常简单的计算器程序,提示用户执行一个操作,然后提示用户输入两个整数来执行这个操作.程序应该在这些操作后循环,除非用户输入字符“q",此时程序应该退出. #include int main (void){字符 c;int number[2], num1, num2, 结果;双 num1d,num2d,结果;int完成=1;同时(完成){printf("\t 你想执行什么样的操作?\n \ ..
发布时间:2021-09-03 18:35:49 其他开发