क्या सी ++ प्री-प्रोसेसर को स्ट्रिंग अक्षर में # परिभाषित मान का विस्तार करने का कोई तरीका है?
उदाहरण के लिए:क्या आप # परिभाषित स्ट्रिंग अक्षर में परिभाषित कर सकते हैं?
#define NEW_LINE '\n'
Printf("OutputNEW_LINE"); //or whatever
यह है कि यह संभव हो जाना चाहिए मेरे लिए लग रहा है के रूप में यह संकलन से पहले है?
या इस तरह के व्यवहार को प्राप्त करने के लिए एक बेहतर डिजाइन पैटर्न है (बिना रनटाइम फिक्स जैसे स्प्रिंटफ का उपयोग किए बिना)?
संपादित मैं समझता हूँ कि # को परिभाषित है कि की बुराई हो सकता है, लेकिन तर्क खातिर ...
अतिरिक्त किसी को भी इस दृष्टिकोण के किसी भी आलोचना है?
@GMan कोई 'कम बदसूरत' विकल्प? –
ठीक है, आप सीधे स्ट्रिंग्स में \ n का उपयोग कर सकते हैं। सी मानक अनिवार्य है कि कम से कम जब पाठ फ़ाइलों और कंसोल को लिखते समय प्लेटफॉर्म डेलीमीटर/टर्मिनेटर के रूप में प्लेटफॉर्म का उपयोग करने के लिए यह एकल वर्ण विस्तारित किया जाएगा। – Joey