এই বিভাগে আমরা দেখব কিভাবে C-তে একটি প্রোগ্রাম লিখতে হয় যা Ctrl + C কী দ্বারা বন্ধ করা যায় না।
Ctrl + C কীবোর্ড বাধা সৃষ্টি করে, এবং এটি বর্তমান প্রক্রিয়ার সম্পাদন বন্ধ করে দেয়। এখানে যখন আমরা Ctrl + C কী টিপব, তখন এটি একটি বার্তা প্রিন্ট করবে তারপর কার্যকর করা চালিয়ে যাবে। এই কার্যকারিতা ব্যবহার করার জন্য, আমরা সি-তে সিগন্যাল হ্যান্ডলিং কৌশল ব্যবহার করব। Ctrl + C চাপলে এটি SIGINT সংকেত তৈরি করে। নিম্নলিখিত তালিকায় আরও কিছু সংকেত এবং তাদের কার্যকারিতা রয়েছে৷
সংকেত | বিবরণ |
---|---|
SIGABRT | অস্বাভাবিক সমাপ্তি নির্দেশ করে |
SIGFPE | ফ্লোটিং পয়েন্ট ব্যতিক্রম নির্দেশ করে |
SIGILL | অবৈধ নির্দেশ নির্দেশ করে। |
SIGINT | প্রোগ্রামে পাঠানো ইন্টারেক্টিভ মনোযোগের অনুরোধ নির্দেশ করে। |
SIGSEGV | অবৈধ মেমরি অ্যাক্সেস নির্দেশ করে। |
SIGTERM | প্রোগ্রামে পাঠানো সমাপ্তির অনুরোধ নির্দেশ করে। |
এখানে আমরা এই সিগন্যালগুলি পরিচালনা করতে স্ট্যান্ডার্ড C লাইব্রেরি ফাংশন সিগন্যাল() ব্যবহার করব।
উদাহরণ কোড
#include <stdio.h> #include <signal.h> void sigint_handler(int signum) { //Handler for SIGINT //Reset handler to catch SIGINT next time. signal(SIGINT, sigint_handler); printf("Cannot be stopped using Ctrl+C \n"); fflush(stdout); } main () { signal(SIGINT, sigint_handler); while(1) { //create infinite loop } }
আউটপুট
Cannot be stopped using Ctrl+C Cannot be stopped using Ctrl+C