Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

C प्रोग्राम जो Ctrl+C दबाने पर समाप्त नहीं होता


इस सेक्शन में हम देखेंगे कि C में ऐसा प्रोग्राम कैसे लिखें जिसे Ctrl + C कुंजी से समाप्त नहीं किया जा सकता।

Ctrl + C कीबोर्ड इंटरप्ट जनरेट करता है, और यह वर्तमान प्रोसेस के निष्पादन को रोक देता है। यहां जब हम Ctrl + C दबाएंगे, तो यह एक मैसेज प्रिंट करेगा फिर निष्पादन जारी रखेगा। इस कार्यक्षमता का उपयोग करने के लिए, हम C में सिग्नल हैंडलिंग तकनीक का उपयोग करेंगे। जब Ctrl + C दबाया जाता है तो यह SIGINT सिग्नल जनरेट करता है। निम्नलिखित सूची में कुछ अन्य सिग्नल्स और उनकी कार्यक्षमताएं हैं।

सिग्नलविवरण
SIGABRTअसामान्य समाप्ति इंगित करता है
SIGFPEफ्लोटिंग पॉइंट एक्सेप्शन इंगित करता है
SIGILLअमान्य निर्देश इंगित करता है
SIGINTप्रोग्राम को भेजे गए इंटरएक्टिव अटेंशन रिक्वेस्ट को इंगित करता है
SIGSEGVअमान्य मेमोरी एक्सेस इंगित करता है
SIGTERMप्रोग्राम को भेजे गए टर्मिनेशन रिक्वेस्ट को इंगित करता है

यहां हम इन सिग्नल्स को हैंडल करने के लिए स्टैंडर्ड C लाइब्रेरी फंक्शन signal() का उपयोग करेंगे।

उदाहरण कोड

#include <stdio.h>
#include <signal.h>

void sigint_handler(int signum) {
    // SIGINT के लिए हैंडलर
    // अगली बार SIGINT पकड़ने के लिए हैंडलर रीसेट करें
    signal(SIGINT, sigint_handler);
    printf("Cannot be stopped using Ctrl+C \n");
    fflush(stdout);
}

main() {
    signal(SIGINT, sigint_handler);
    while(1) { // अनंत लूप बनाएं
    }
}

आउटपुट

Cannot be stopped using Ctrl+C
Cannot be stopped using Ctrl+C
  1. C प्रोग्राम इमेज को PGM फॉर्मेट में लिखने के लिए C प्रोग्राम इमेज को PGM फॉर्मेट में लिखने के लिए

    PGM पोर्टेबल ग्रे मैप है। यदि हम C में 2D ऐरे को PNG, JPEG, या किसी अन्य इमेज फॉर्मेट में इमेज के रूप में स्टोर करना चाहते हैं, तो हमें फाइल में लिखने से पहले डेटा को कुछ निर्दिष्ट फॉर्मेट में एन्कोड करने के लिए बहुत काम करना होगा। Netpbm फॉर्मेट एक आसान और पोर्टेबल समाधान देता है। Netpbm ग्राफिक्

  1. Windows 11 में सभी नॉट रिस्पॉन्डिंग प्रोग्राम प्रोसेस को समाप्त कैसे करें Windows 11 में सभी नॉट रिस्पॉन्डिंग प्रोग्राम प्रोसेस को समाप्त कैसे करें

    जब कोई प्रोग्राम जिसका आप उपयोग कर रहे हैं, आपके एक्शन का जवाब देना बंद कर देता है, तो संभावना है कि वह क्रैश हो गया है। एक नॉन-रिस्पॉन्सिव प्रोग्राम सॉफ्टवेयर क्रैश के सबसे आम प्रकारों में से एक है। नॉट रिस्पॉन्डिंग प्रोग्राम प्रोसेस का एरर मैसेज कहता है: The application is not responding, do you w

  1. त्रुटि 1083:  सेवा चलाने के लिए कॉन्फ़िगर किया गया प्रोग्राम सेवा लागू नहीं करता  - समाधान त्रुटि 1083: "सेवा चलाने के लिए कॉन्फ़िगर किया गया प्रोग्राम सेवा लागू नहीं करता" - समाधान

    यदि आप Windows सेवा प्रबंधक का उपयोग करके सेवा शुरू करते समय त्रुटि 1083, वह एक्जीक्यूटेबल प्रोग्राम जो इस सेवा को चलाने के लिए कॉन्फ़िगर किया गया है वह सेवा को लागू नहीं करता प्राप्त करते हैं, तो यह पोस्ट आपको समस्या का निवारण करने में मदद करेगी। चूंकि लगभग हर प्रोग्राम को आपके कंप्यूटर पर चलाने के