В Unix настройки по умолчанию для определенных ключей различаются для каждой платформы. Например, стереть в Ubuntu может быть erase = ^?
. Но тогда для AIX все может быть совершенно иначе, как в примере erase = ^H
. Как проверить настройку stty в C?
Это то, что я пытался написать
#include<stdio.h>
#include<stdlib.h>
#include<termios.h>
#include<unistd.h>
int main()
{
struct termios term;
if(tcgetattr(STDIN_FILENO, &term) < 0)
{
printf("Error to get terminal attr\n");
}
printf("The value for Erase is %s\n",term.c_cc[ERASE]);
return 0;
}
После компиляции с помощью gcc. Там написано, что ERASE необъявлен. Итак, что на самом деле является правильным вариантом или переменной, которую я должен использовать?