gpt4 book ai didi

c - 为什么按下回车键后会显示输入内容?

转载 作者:行者123 更新时间:2023-11-30 16:38:52 26 4
gpt4 key购买 nike

#include <stdio.h>

/* copy input to output */

main()
{
int c;

c = getchar();

while(c != EOF)
{
putchar(c);
c = getchar();
}

return 0;
}

在给定的代码中,程序显示输入的字符。它逐个读取每个字符(写入变量“c”)并同时输出相同的读取字符。当 EOF 字符作为输入给出时,程序终止。

当我在 IDE 中运行代码 (Code::Blocks 16.01) 并输入一个字符串时,例如:嗨!我的名字是 C。\n

输出显示在“\n”之后,但不同时显示。输出不应该是 - "HHii!! MMyy nnaammee iiss CC..”?

粗体字母表示输出。

最佳答案

包括:

#include <unistd.h>
#include <termios.h>

在主代码之前插入:

struct termios term, term_orig;
if(tcgetattr(STDIN_FILENO, &term_orig)) {
printf("tcgetattr failed\n");
return -1;
}
term = term_orig;
term.c_lflag &= ~ICANON;
if (tcsetattr(STDIN_FILENO, TCSANOW, &term)) {
printf("tcsetattr failed\n");
return -1;

}

插入代码后:

if (tcsetattr(STDIN_FILENO, TCSANOW, &term_orig)) {
printf("tcsetattr failed\n");
return -1;
}

关于c - 为什么按下回车键后会显示输入内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47322896/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com