Ввод символа esc сохраняет десятичное значение 10, когда должно отображаться значение 27

при выполнении следующего кода:

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

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

он печатает значение ’10’, но в таблице ascii указано, что оно должно иметь значение’27’. Я пробовал это с помощью scanf, а также, но получил тот же результат. Что происходит?

1 ответ

  1. Я обнаружил , что если я использую библиотеку#include <conio.h>, а затем использую getch()функцию, она работает отлично.

    #include <stdio.h>
    #include <conio.h>
    
    void main()
    {
        int ESC;
        ESC = getch();
        printf("%d", ESC);
    }