У меня есть такой код:Как распечатать завершение этой программы?
int main()
{
int x=0;
std::cout<<"Enter numbers"<<std::endl;
while(std::cin>>x)
{
std::cout<<"Number entered: "<<x<<std::endl;
}
return 0;
}
Когда я нажимаю ctrl+c
код получает прекращается. Я хотел бы напечатать что-то вроде «завершена программа, потому что нажата ctrl+c
. Я знаю, что обработка исключений - это способ. Но есть ли другая альтернатива? Кстати, я работаю на Linux.
Еще одна полезная вещь, чтобы сделать в обработчике сигнала установить [атомный флаг] (http://en.cppreference.com/w/c/ atomic/atomic_flag), чтобы код в основном потоке мог делать что-то на основе информации. – rvighne