यहां हम एक सी पहेली प्रश्न देखेंगे। मान लीजिए हमारे पास दो संख्याएँ 48 और 96 हैं। हमें दूसरी के बाद पहली संख्या को जोड़ना है। तो अंतिम परिणाम 9648 की तरह होगा। लेकिन हम किसी भी तार्किक, अंकगणित, स्ट्रिंग से संबंधित संचालन का उपयोग नहीं कर सकते हैं, साथ ही किसी पूर्व-निर्धारित फ़ंक्शन का उपयोग नहीं कर सकते हैं। तो हम ऐसा कैसे कर सकते हैं?
यह आसान है। हम सी में टोकन पेस्टिंग ऑपरेटर (##) का उपयोग करके कर सकते हैं। टोकन पेस्टिंग ऑपरेटर एक प्रीप्रोसेसर ऑपरेटर है। यह कंपाइलर को एक स्ट्रिंग में दो टोकन जोड़ने या जोड़ने के लिए कमांड भेजता है। हम इस ऑपरेटर का उपयोग मैक्रो परिभाषा में करते हैं।
उदाहरण
#include<stdio.h> #define MERGE(x, y) y##x main() { printf("%d", MERGE(48, 96)); }
आउटपुट
9648