C 如何获取返回按键事件?

C 如何获取返回按键事件?,c,keyboard-events,C,Keyboard Events,我正在用C编写一个控制台编辑器。我正在Windows上使用CodeLite编辑器。我想在用户按Return(Enter)键时插入一个换行符('\n')。我想用getchar()函数实现这个目标,这可能吗? 我需要它,因为我想增加y轴变量。 我正在尝试的代码: int X = 0; // X-axis int Y = 0; // Y-axis char key = getchar(); if (key=='sth') // Here I want to perform my check {

我正在用C编写一个控制台编辑器。我正在Windows上使用CodeLite编辑器。我想在用户按Return(Enter)键时插入一个换行符
('\n')
。我想用
getchar()
函数实现这个目标,这可能吗? 我需要它,因为我想增加y轴变量。 我正在尝试的代码:

int X = 0; // X-axis
int Y = 0; // Y-axis
char key = getchar();
if (key=='sth') // Here I want to perform my check 
{
    //Do Something
    ++Y;
}
更新:
如果它有一个类似于:
'\x45'
的代码,例如在评论plz中发布它

如果您试图实现编辑器,您会很快发现
getchar()
不是解释键盘事件的方法。在这个非常简单的示例中,您可能要做的就是等待输入的一次击键,该输入要么是换行符,要么不是换行符,如果您将“sth”(something?的缩写)更改为
“\n”
,程序将工作。但是,随着编辑器变得越来越复杂,您将需要一个实际的事件处理程序,它可以检测任何类型的键盘事件,并可以异步处理这些事件
getchar()
不是这样做的方法


7年前的这个答案表明:(1)你可以用
getch()
(和
getchar()
)走有限的路,但是(2)更多的人同意它不能替代真正的事件处理程序:

如果你试图实现一个编辑器,你会很快发现
getchar()
不是解释键盘事件的方法。在这个非常简单的示例中,您可能要做的就是等待输入的一次击键,该输入要么是换行符,要么不是换行符,如果您将“sth”(something?的缩写)更改为
“\n”
,程序将工作。但是,随着编辑器变得越来越复杂,您将需要一个实际的事件处理程序,它可以检测任何类型的键盘事件,并可以异步处理这些事件
getchar()
不是这样做的方法


7年前的这个答案表明:(1)你可以用
getch()
(和
getchar()
)走有限的距离,但是(2)更多的人认为它不能替代真正的事件处理程序:

我从中得到启发我从中得到启发如果你看到你所指的页面,你会看到他们说我应该使用
getch
,然而,getch不是标准库的一部分,所以我不应该使用它。你不应该仅仅因为它不是标准库的一部分就使用它,但你有权知道/担心它不是。然而,有些东西并不是标准化的,所以有时候你只需要去做那些有用的东西(如果你需要多平台的话,就要去做各种各样的“有趣的”挑战)。如果你看到你所指的页面,你会看到windows,他们说我应该使用
getch
,然而,getch不是标准库的一部分,所以我不应该使用它。你不应该仅仅因为它不是标准库的一部分就使用它,但你有权知道/担心它不是。然而,有些事情并不是标准化的,所以有时候你只需要去做那些有效的事情(如果你需要多平台的话,就要去做各种“有趣的”挑战)。