c-preprocessor पर टैग किए गए जवाब

C और C ++ भाषा कार्यक्रमों को संकलित करने से पहले एक टेक्स्ट मैक्रो प्रोसेसर लागू किया गया। इस टैग का उपयोग उन अन्य संकलक / भाषाओं से संबंधित प्रश्नों के लिए भी किया जा सकता है, जिनके पास समान विशेषताएं हैं, जैसे कि Objective-C या C # में # विकल्प।

19
#ifdef बनाम #if - जो कोड के विशेष वर्गों को सक्षम / अक्षम करने के लिए एक विधि के रूप में बेहतर / सुरक्षित है?
यह शैली का मामला हो सकता है, लेकिन हमारी देव टीम में थोड़ा सा विभाजन है और मुझे आश्चर्य है कि किसी और ने इस मामले पर कोई विचार किया था ... मूल रूप से, हमारे पास कुछ डिबग प्रिंट स्टेटमेंट हैं, जिन्हें हम सामान्य विकास के दौरान बंद कर …

3
क्लैंग का पता लगाने के लिए मैं किस पूर्वनिर्धारित मैक्रो का उपयोग कर सकता हूं?
मैं अपने स्रोत कोड को संकलित करने के लिए उपयोग किए गए कंपाइलर का पता लगाने की कोशिश कर रहा हूं। मैं आसानी से पूर्वनिर्धारित मैक्रोज़ को MSVC या GCC के लिए देख सकता हूं (देखें) उदाहरण के लिए http://predef.sourceforge.net/ ) के लिए सकता हूं, लेकिन मुझे क्लैग की जांच …


10
C / C ++ लाइन नंबर
डिबगिंग उद्देश्यों के लिए, क्या मुझे C / C ++ कंपाइलर में लाइन नंबर मिल सकता है ? (कुछ कंपाइलरों के लिए मानक तरीका या विशिष्ट तरीके) जैसे if(!Logical) printf("Not logical value at line number %d \n",LineNumber); // How to get LineNumber without writing it by my hand?(dynamic compilation)

6
प्रीप्रोसेसिंग के बाद आउटपुट सी कोड प्राप्त कर सकते हैं?
मैं एक ओपन सोर्स लाइब्रेरी का उपयोग कर रहा हूं, जिसमें सी के अलावा कई भाषाओं का समर्थन करने के लिए बहुत सारे प्रीप्रोसेसिंग निर्देश हैं। ताकि मैं यह अध्ययन कर सकूं कि लाइब्रेरी क्या कर रहा है मैं सी कोड देखना चाहता हूं जो मैं प्रीप्रोसेसिंग के बाद संकलित …

7
सी / सी ++ मैक्रो में कोमा
कहें कि हमारे पास इस तरह एक मैक्रो है #define FOO(type,name) type name जिसे हम इस्तेमाल कर सकते थे FOO(int, int_var); लेकिन हमेशा बस के रूप में नहीं: FOO(std::map<int, int>, map_var); // error: macro "FOO" passed 3 arguments, but takes just 2 बेशक हम कर सकते हैं: typedef std::map<int, int> …
103 c++  c  macros  c-preprocessor 

11
मैक्रो बनाम फंक्शन सी में
मैंने हमेशा उदाहरणों और मामलों को देखा, जहां मैक्रो का उपयोग फ़ंक्शन का उपयोग करने से बेहतर है। किसी ने मुझे एक समारोह की तुलना में एक मैक्रो का नुकसान उदाहरण के साथ समझा सकता है?

8
Xcode में प्रीप्रोसेसर प्रतीक कैसे परिभाषित करें
क्या Xcode प्रोजेक्ट में प्रॉपर्टीज़ सेट करके सशर्त संकलन के लिए एक प्रतीक स्थापित करना संभव है? मेरा उद्देश्य एक ऐसा प्रतीक बनाना है, जो सभी फाइलों के लिए उपलब्ध है, बिना आयात / शामिल किए, ताकि आम वर्गों के एक सेट का कुछ परियोजनाओं में एक विशेष व्यवहार हो …


8
इंडेंटिंग #defines
मुझे पता है कि #defineएस, आदि आमतौर पर कभी भी इंडेंट नहीं होते हैं। क्यों? मैं इस समय कुछ कोड में काम कर रहा हूं जिसमें #defines, #ifdefs, #elses, #endifs आदि का भयानक मिश्रण है । इन सभी को अक्सर सामान्य कोड के साथ मिलाया जाता है। एस के गैर-इंडेंटिंग …

12
सी ++ प्रीप्रोसेसर __VA_ARGS__ तर्कों की संख्या
सरल प्रश्न जिसके लिए मुझे नेट पर उत्तर नहीं मिला। वैरेडिक तर्क मैक्रोज़ में, तर्कों की संख्या कैसे ज्ञात करें? मैं बढ़ावा देने के साथ ठीक हूँ, अगर यह समाधान है। यदि इससे कोई फ़र्क पड़ता है, तो मैं आगे पुनरावृत्ति के लिए प्रीप्रोसेसर अनुक्रम, सूची, या सरणी को बढ़ावा …

7
क्या सी प्रीप्रोसेसर से संदेश प्रिंट करने का एक पोर्टेबल तरीका है?
मैं ऐसा कुछ करने में सक्षम होना चाहूंगा #print "C Preprocessor got here!" डिबगिंग उद्देश्यों के लिए। ऐसा करने का सबसे अच्छा / सबसे पोर्टेबल तरीका क्या है?

4
परिभाषित मैक्रो में प्रगति
क्या अन्य बयानों के साथ मैक्रो स्टेटमेंट को मैक्रो में एम्बेड करने का कोई तरीका है? मैं कुछ हासिल करने की कोशिश कर रहा हूं: #define DEFINE_DELETE_OBJECT(type) \ void delete_ ## type_(int handle); \ void delete_ ## type(int handle); \ #pragma weak delete_ ## type_ = delete_ ## type अगर …

14
Xcode 4 (और निर्भरता) के साथ समस्याओं का संकलन, निर्माण या संग्रह करें
यह सवाल पिछले कई हफ्तों से विकसित हुआ है ताकि अधिक सामान्य मुद्दों को कवर किया जा सके xcode4 (और अपग्रेड प्रोजेक्ट पुराने रूप में xcodeरों)। हालाँकि निर्देशों के एक ही सेट का पालन करके कई मुद्दों को हल किया जा सकता है। यदि आपके पास निम्न में से कोई …

8
प्रीप्रोसेसर मैक्रोज़ बुराई क्यों हैं और विकल्प क्या हैं?
मैंने हमेशा यह पूछा है लेकिन मुझे कभी कोई अच्छा जवाब नहीं मिला; मुझे लगता है कि पहले "हैलो वर्ल्ड" लिखने से पहले लगभग किसी भी प्रोग्रामर ने "मैक्रो का इस्तेमाल कभी नहीं किया जाना चाहिए", "मैक्रो ईविल एनीड" जैसे वाक्यांश का सामना किया था और इसी तरह, मेरा सवाल …

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.