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

C में मल्टीलाइन मैक्रोज़


C में मल्टीलाइन मैक्रोज़ लिखने के लिए प्रत्येक लाइन के अंत में बैकस्लैश (\) लगाएं।

सिंटैक्स नियम

  • प्रत्येक लाइन (अंतिम को छोड़कर) \ से समाप्त होनी चाहिए।
  • \ के बाद **कोई व्हाइटस्पेस नहीं** (न्यूलाइन तुरंत)।
  • पूरे मैक्रो को do { ... } while(0) में लपेटें ताकि यह स्टेटमेंट जैसा व्यवहार करे।

उदाहरण

#include <stdio.h>

#define PRINT(x, str) \
    do { \
        printf("The number %d", x); \
        printf(" is "); \
        printf(#str); \
        printf("\n"); \
    } while (0)

int main() {
    int x = 10;
    if (x % 2 == 0) {
        PRINT(x, EVEN);  // सेमीकॉलन के साथ उपयोग
    }
    return 0;
}

आउटपुट

The number 10 is EVEN

do { ... } while(0) क्यों?

  • मैक्रो को सिंगल स्टेटमेंट बनाता है।
  • if (cond) MACRO(); else ... सही काम करता है।
  • बिना इसके, if (cond) MACRO(); केवल पहली लाइन को if बॉडी मानता है।

स्ट्रिंगिफिकेशन और कन्केटिनेशन

#define STR(x) #x           // स्ट्रिंगिफिकेशन: STR(hello) → "hello"
#define CAT(a, b) a ## b    // कन्केटिनेशन: CAT(var, 1) → var1
#define LOG(msg) printf("LOG: " #msg "\n")

सावधानियां

  • मैक्रो पैरामीटर्स को पैरेंथेसिस में लपेटें: #define SQR(x) ((x)*(x))।
  • साइड इफेक्ट्स वाले आर्गुमेंट्स से बचें: SQR(i++) → ((i++)*(i++)) (UB)।
  • लंबे मैक्रोज़ के बजाय static inline फंक्शन्स प्राथमिकता दें (C99)।
  1. Group Policy का उपयोग करके Microsoft Office में मैक्रोज़ को चलने से रोकें और ब्लॉक करें Group Policy का उपयोग करके Microsoft Office में मैक्रोज़ को चलने से रोकें और ब्लॉक करें

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

  1. Tkinter में मल्टीलाइन एंट्री कैसे बनाएं? Tkinter में मल्टीलाइन एंट्री कैसे बनाएं?

    मान लीजिए हम एक एंट्री विजेट बनाना चाहते हैं जो मल्टीलाइन यूज़र इनपुट सपोर्ट करता है। मल्टीलाइन एंट्री विजेट बनाने के लिए, हम Text() कंस्ट्रक्टर का उपयोग कर सकते हैं। उदाहरण यहां, इस उदाहरण में, हम एक विंडो बनाएंगे जिसमें एक मल्टीलाइन एंट्री विजेट होगा। # लाइब्रेरी इम्पोर्ट करें from tkinter impor

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

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