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

C/C++ प्रोग्राम को प्रीप्रोसेसर कोड में बदलना


GCC/G++ का -E फ्लैग प्रीप्रोसेसिंग के बाद का आउटपुट दिखाता है (मैक्रो एक्सपेंशन, इन्क्लूड्स, कंडीशनल कंपाइलेशन)।

कमांड

gcc -E program.c      # C के लिए
g++ -E program.cpp    # C++ के लिए
cpp program.c         # स्टैंडअलोन प्रीप्रोसेसर

उदाहरण

// source.cpp
#define PI 3.1415
#define SQUARE(x) ((x)*(x))

int main() {
    float a = PI, r = 5;
    float area = SQUARE(r) * a;
    return 0;
}

कमांड और आउटपुट

$ g++ -E source.cpp
# 1 "source.cpp"
# 1 ""
# 1 ""
# 1 "source.cpp"

int main() {
    float a = 3.1415, r = 5;
    float area = ((r)*(r)) * a;
    return 0;
}

प्रीप्रोसेसर क्या करता है

  • #include: हेडर फाइल कंटेंट इन्सर्ट करता है।
  • #define: मैक्रो एक्सपेंशन (ऑब्जेक्ट-लाइक और फंक्शन-लाइक)।
  • #if, #ifdef, #ifndef: कंडीशनल कंपाइलेशन।
  • #line: लाइन नंबर/फाइल नाम बदलता है।
  • #pragma: कंपाइलर-विशिष्ट निर्देश।
  • कमेंट्स हटाता है (कुछ मोड्स में छोड़कर)।

उपयोगी फ्लैग्स

डिबगिंग के लिए उपयोग

  • मैक्रो एक्सपेंशन जांचने के लिए।
  • इन्क्लूड पाथ समस्याओं के निदान के लिए।
  • कंडीशनल कंपाइलेशन वेरिफाई करने के लिए।
  1. nवीं कैटलन संख्या (nth Catalan Number) के लिए C/C++ प्रोग्राम? nवीं कैटलन संख्या (nth Catalan Number) के लिए C/C++ प्रोग्राम?

    कैटलन संख्याएं (Catalan numbers) संख्याओं का एक अनुक्रम है। कैटलन संख्याएं प्राकृतिक संख्याओं का एक अनुक्रम बनाती हैं जो विभिन्न गणना समस्याओं में होती हैं, अक्सर पुनरावर्ती रूप से परिभाषित वस्तुओं से जुड़ी होती हैं। Cₙ लंबाई 2n के डाइक शब्दों (Dyck words) की संख्या है। एक डाइक शब्द n Xs और n Ys

  1. C++ प्रोग्राम: फारेनहाइट को सेल्सियस में बदलना C++ प्रोग्राम: फारेनहाइट को सेल्सियस में बदलना

    इस प्रोग्राम में हम देखेंगे कि C++ का उपयोग करके सेल्सियस को फारेनहाइट में कैसे बदलें। जैसा कि हम जानते हैं सूत्र सरल है। एल्गोरिदम शुरुआत सेल्सियस तापमान C में लें F = (9C/5)+32 की गणना करें F वापस करें अंत उदाहरण कोड #include<iostream> using namespace std; main() { float f, c; cout <<

  1. - C++ प्रोग्राम: ऑक्टल संख्या को बाइनरी संख्या में बदलना

    परिचय कंप्यूटर सिस्टम में, बाइनरी संख्या बाइनरी अंक प्रणाली (आधार 2) में व्यक्त की जाती है जबकि ऑक्टल संख्या ऑक्टल अंक प्रणाली (आधार 8) में होती है। बाइनरी और ऑक्टल संख्याओं के उदाहरण बाइनरी संख्याऑक्टल संख्या 0110115 001015 1011026 0101012 C++ प्रोग्राम उदाहरण #include <iostream> #in

© कॉपीराइट https://in.wsxdn.com सर्वाधिकार सुरक्षित
फ्लैगउद्देश्य
-Eकेवल प्रीप्रोसेस, आउटपुट stdout पर
-dMसभी प्रीडिफाइंड मैक्रोज़ डंप करें (gcc -dM -E - < /dev/null)
-dDउपयोगकर्ता मैक्रोज़ सहित सभी मैक्रोज़ डंप करें
-P#line डायरेक्टिव्स न जनरेट करें
-Cकमेंट्स संरक्षित रखें