Q
防止C程序
0
A
回答
6
當程序正在運行時按下Ctrl-C,下面會發生什麼情況是您的進程接收到一個名爲SIGINT的信號,當進程接收到此信號時的默認操作是自行終止。
所以,你的目標應該是修改此行爲:
signal(SIGINT, handler_function);//handler_function is a void returning function that takes one int paramter, you can do nothing there if you just want to prevent your process from terminating.
:
使用功能signal
趕上發送到你的過程中,信號時,CTRL-C
你應該像這樣走 PS以下是man page的詳細信息:D
PPS如果您對家用電器的信號不熟悉,請參閱this wikipedia page,如果您發現有些問題,請告訴我們。
2
的我該怎麼辦的任何想法,
使用SIG_IGN處置忽略SIGINT
或趕上它在一個什麼都不做處理。在一些實現中,甚至有一個sigignore
函數。
不管怎麼說,你應該罰款:
signal(SIGINT, SIG_IGN);
SIG_IGN
在C11-7.14被sppecified所以它的便攜,因爲它得到。
相關問題
- 1. 防止在c中加載程序集#
- 2. 防止Web應用程序
- 3. 防止程序的痕跡
- 4. 防止程序使用ClipCursor?
- 5. 防止用戶終止Java程序?
- 6. 防止C#EXE
- 7. C - 線程和進程 - 防止殭屍
- 8. C#控制檯應用程序:防止Control-C被打印?
- 9. 如何防止C或C++程序使用CRT功能?
- 10. 兩個線程程序防止死鎖
- 11. 防止序列化使用datacontractjsonserializer C#
- 12. C++程序終止
- 13. C程序終止
- 14. 線程C++防止更改值
- 15. C++防止Windows應用程序竊取焦點
- 16. 防止重複項被添加(C程序)
- 17. C#.NET安全性如何防止程序加載
- 18. 程序運行時防止睡眠模式C#
- 19. 如何防止用戶查殺C#應用程序
- 20. C#webservice和Android應用程序:如何防止非法訪問
- 21. 如何防止C#應用程序訪問網絡?
- 22. 防止爲某些應用程序加載C#dll
- 23. 防止用戶關閉通過C#程序打開的應用程序
- 24. 如何防止C程序崩潰所造成的外部程序
- 25. 防止序列化
- 26. Windows安裝程序 - 防止覆蓋dll
- 27. 防止小程序的反編譯
- 28. 防止事件處理程序排隊
- 29. 防止按鍵離開應用程序
- 30. 防止應用程序立即退出?