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

C मैक्रो PRINT(x) लिखें जो x प्रिंट करे


स्ट्रिंगिफिकेशन ऑपरेटर # का उपयोग करके मैक्रो आर्गुमेंट को स्ट्रिंग लिटरल में बदलें।

उदाहरण

#include <stdio.h>

#define PRINT(x) printf(#x "\n")

int main() {
    PRINT(Hello);
    PRINT(26);
    PRINT(2.354721);
    PRINT(This is a test);
    return 0;
}

आउटपुट

Hello
26
2.354721
This is a test

कैसे काम करता है

  • #x मैक्रो पैरामीटर x के टोकन्स को स्ट्रिंग लिटरल में बदल देता है।
  • PRINT(Hello) → printf("Hello" "\n") → printf("Hello\n") (स्ट्रिंग लिटरल कन्केटिनेशन)।
  • व्हाइटस्पेस संरक्षित रहता है: PRINT(Hello World) → "Hello World"।

उन्नत: एक्सप्रेशन प्रिंट करना

#define PRINT_EXPR(expr) printf(#expr " = %d\n", (expr))

int main() {
    int a = 10, b = 20;
    PRINT_EXPR(a + b);  // "a + b = 30"
    PRINT_EXPR(a * b);  // "a * b = 200"
    return 0;
}

सीमाएं

  • केवल टोकन लेवल पर काम करता है - वेरिएबल का मान नहीं, उसका नाम प्रिंट होता है।
  • कॉम्प्लेक्स एक्सप्रेशन्स के लिए #expr सोर्स कोड जैसा दिखाता है।
  • डिबगिंग के लिए उपयोगी, उत्पादन लॉगिंग के लिए नहीं।
  1. 3D प्रिंट्स की प्लेटिंग 3D प्रिंट्स की प्लेटिंग

    स्नैप। आपने अभी-अभी 3D प्रिंटेड पार्ट को थोड़ा सा मोड़ा या झुकाया और वह आवाज आपने सुनी। हम में से अधिकांश ने ऐसा किया है - कनेक्शन के एक भाग का परीक्षण करते समय, हम थोड़ा जोर से दबाते या खींचते हैं और हमारा काम टूट जाता है। निश्चित रूप से, 3D प्रिंटिंग मटेरियल स्ट्रेंथ के बारे में पढ़ने में मदद मिले

  1. C प्रोग्राम: सरणी को उलटें (Reverse Array) C प्रोग्राम: सरणी को उलटें (Reverse Array)

    संबंधित आइटम्स का समूह जो एक सामान्य नाम से संग्रहीत होता है, सरणी कहलाता है। सिंटैक्स datatype array_name[size]; आरंभीकरण घोषणा के समय आरंभीकरण: int a[5] = {10, 20, 30, 40, 50}; C में सरणी उलटना हम स्वैपिंग तकनीक का उपयोग करके सरणी को उलट सकते हैं। उदाहरण: यदि P चार एलिमेंट्स की पूर्णांक सरणी ह

  1. एचपी प्रिंटर: अप्रत्याशित टेस्ट प्रिंट और गिबरिश का त्वरित समाधान एचपी प्रिंटर: अप्रत्याशित टेस्ट प्रिंट और गिबरिश का त्वरित समाधान

    क्या आपका एचपी प्रिंटर बार-बार बंद हो जाता है? तो यहां हमारे पास आपके लिए सर्वोत्तम समाधान हैं। यदि आप अपने प्रिंटर का उपयोग प्रिंटिंग के लिए करने का प्रयास कर रहे हैं और यदि आपका एचपी प्रिंटर अप्रत्याशित टेस्ट प्रिंट प्रिंट करता है तो निश्चित रूप से यह आपके लिए परेशानी पैदा करेगा। इस प्रकार, आपको इ