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

C में स्वच्छ मैक्रोज़ (Hygienic Macros)

यहां हम C में स्वच्छ मैक्रोज़ देखेंगे। हम C में मैक्रोज़ के उपयोग को जानते हैं। लेकिन कभी-कभी यह पहचानकर्ताओं के आकस्मिक कैप्चर के कारण वांछित परिणाम नहीं देता है।

यदि हम निम्नलिखित कोड देखते हैं, तो हम देख सकते हैं कि यह ठीक से काम नहीं कर रहा है।

उदाहरण

#include <stdio.h>
#define INCREMENT(i) do { int a = 0; ++i; } while(0)
int main(void) {
    int a = 10, b = 20;
    // मैक्रोज़ को a और b के लिए दो बार कॉल करें
    INCREMENT(a);
    INCREMENT(b);
    printf("a = %d, b = %d\n", a, b);
}

प्रीप्रोसेसिंग के बाद कोड इस तरह होगा:

उदाहरण

#include <stdio.h>
#define INCREMENT(i) do { int a = 0; ++i; } while(0)
int main(void) {
    int a = 10, b = 20;
    // मैक्रोज़ को a और b के लिए दो बार कॉल करें
    do { int a = 0; ++a; } while(0);
    do { int a = 0; ++b; } while(0);
    printf("a = %d, b = %d\n", a, b);
}

आउटपुट

a = 10, b = 21

यहां हम देख सकते हैं कि a के लिए मान अद्यतन नहीं हुआ है। इसलिए इस मामले में हम स्वच्छ मैक्रोज़ का उपयोग करेंगे। ये स्वच्छ मैक्रोज़ वे मैक्रोज़ हैं जिनके विस्तार की गारंटी है कि वे पहचानकर्ताओं का आकस्मिक कैप्चर नहीं बनाते हैं। यहां हम किसी ऐसे वेरिएबल नाम का उपयोग नहीं करेंगे जो विस्तार के तहत कोड के साथ हस्तक्षेप करने का जोखिम उठा सके। यहां एक अन्य वेरिएबल 't' का उपयोग मैक्रो के अंदर किया जाता है। यह प्रोग्राम में ही उपयोग नहीं किया जाता है।

उदाहरण

#include <stdio.h>
#define INCREMENT(i) do { int t = 0; ++i; } while(0)
int main(void) {
    int a = 10, b = 20;
    // मैक्रोज़ को a और b के लिए दो बार कॉल करें
    INCREMENT(a);
    INCREMENT(b);
    printf("a = %d, b = %d\n", a, b);
}

आउटपुट

a = 11, b = 21
  1. Microsoft Excel में मैक्रोज़ कैसे बनाएं और चलाएं Microsoft Excel में मैक्रोज़ कैसे बनाएं और चलाएं

    Microsoft Excel में, मैक्रोज़ Visual Basic प्रोग्रामिंग भाषा में रिकॉर्ड किए जाते हैं और इसे कई तरीकों से चलाया जा सकता है। आप Developer टैब पर मैक्रोज़ कमांड पर क्लिक करके, संयोजन शॉर्टकट कुंजी का उपयोग करके, ग्राफिक ऑब्जेक्ट पर क्लिक करके, या क्विक एक्सेस टूलबार पर बटन पर क्लिक करके मैक्रो चला सकत

  1. Group Policy का उपयोग करके Microsoft Office में मैक्रोज़ को चलने से रोकें और ब्लॉक करें Group Policy का उपयोग करके Microsoft Office में मैक्रोज़ को चलने से रोकें और ब्लॉक करें

    आप Group Policy का उपयोग करके Windows 10 में इंटरनेट से आने वाले मैक्रोज़ और परिणामस्वरूप, मैक्रो वायरस या मैक्रो-लक्षित मैलवेयर फ़ाइलों को अपने Microsoft Office प्रोग्राम जैसे Word, Excel, या PowerPoint दस्तावेज़ों में स्वचालित रूप से खुलने और चलने से रोक सकते हैं। Office Macros मूल रूप से Visual B

  1. विंडोज 10 में कीबोर्ड मैक्रोज बनाएं: प्रोडक्टिविटी तेजी से बढ़ाएं विंडोज 10 में कीबोर्ड मैक्रोज बनाएं: प्रोडक्टिविटी तेजी से बढ़ाएं

    विंडोज 10 में उस ऐप तक पहुंचने के लिए शॉर्टकट बनाने के अलग-अलग तरीके हैं जिनकी आप चाहते हैं। आसान पहुंच के लिए, आप विंडोज 10 ऐप को स्टार्ट मेनू, टास्कबार पर पिन कर सकते हैं, या डेस्कटॉप पर शॉर्टकट बना सकते हैं। यदि ऐप ऐसा कुछ है जिसका आप विंडोज 10 में दैनिक आधार पर उपयोग करते हैं, तो आप ऐप को तेजी स