输入一个esc char存储十进制值10,当它应该显示值为27

时间:2016-11-07 17:27:29

标签: c windows ascii scanf getchar

当我运行以下代码时:

#include <stdio.h>
#include <stdlib.h>

void main()
{
    int ESC;
    ESC = getchar();
    printf("\n%d", ESC);
}

它打印的值为“10”,但ascii表指出它应该具有值“27”。我也尝试过使用scanf,但结果相同。发生了什么事?

1 个答案:

答案 0 :(得分:0)

我发现如果我使用图书馆#include <conio.h>,然后使用getch()功能,则效果非常好。

#include <stdio.h>
#include <conio.h>

void main()
{
    int ESC;
    ESC = getch();
    printf("%d", ESC);
}