как можно запретить ввод букв внутри терминала? Жмем клавишу, программа сразу отрабатывает, понимает, что это буква и ничего не происходит. Жмем на цифру, появляется в строке ввода цифра.
Придумал только так... Выглядит страшно, но работает так как хотел. Есть ошибка когда число слишком большое.
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <termios.h>
#include <iostream>
#include <cstdlib>
#include <algorithm>
#include <string>
#include <sstream>
using namespace std;
int RotateNumber(int number) {
std::ostringstream output_stream;
int result;
output_stream << number;
std::string str_number = output_stream.str();
std::reverse(str_number.begin(),str_number.end());
std::istringstream input_stream(str_number, std::istringstream::in);
input_stream >> result;
return result;
}
int main()
{
char c;
int temp;
int tempp = 1;
int end = 0;
struct termios tty, savetty;
while (true){
fflush(stdout);
tcgetattr(0, &tty);
savetty = tty;
tty.c_lflag &= ~(ISIG | ICANON);
tty.c_cc[VMIN] = 1;
tcsetattr(0, TCSAFLUSH, &tty);
read(0, &c, 1);
tcsetattr(0, TCSANOW, &savetty);
if ( c == '0' || c == '1' || c == '2' || c == '3' || c == '4' || c == '5' || c == '6' || c == '7' || c == '8' || c == '9')
{
temp = c - '0';
end += temp * tempp;
tempp *= 10;
}
else
{
system("clear");
cout << RotateNumber(end);
}
}
return 0;
}
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Изучаю Spring на IDE IntelJIdeaХочу почитать что делает тот или иной метод, аннотация
Мне нужно создавать модальное окноВ мою функцию (назовем function()) приходит объект типа javafx