के बीच कोई अंतर है, मैं आमतौर पर C++ में प्रोग्रामिंग कर रहा हूं, लेकिन मेरे char * के लिए कुछ क्लाइब्रिक फ़ंक्शंस का उपयोग कर रहा हूं। 'गेटलाइन' के लिए कुछ मैनपेजों का कहना है कि इनपुट एक मॉलोकर्ड सरणी होना चाहिए।malloced arrays और newed arrays
क्या यह ठीक है, इसके बजाय 'नया' उपयोग करना ठीक है?
मैं अपने छोटे नमूने के लिए देख सकता हूं कि यह काम करता है, लेकिन क्या यह किसी बिंदु पर कुछ अजीब अपरिभाषित व्यवहार में हो सकता है?
मुझे पता है कि 'नया' 'डिलीट' से मेल खाना चाहिए, और 'फ्री' के साथ 'मॉलोक' होना चाहिए।
मैं std :: स्ट्रिंग का भी उपयोग नहीं कर रहा हूं। और यह जानबूझकर है।
धन्यवाद
नहीं, यह ठीक नहीं है। लेकिन अगर आप सी ++ का उपयोग कर रहे हैं तो std :: getline() का उपयोग क्यों न करें? –
जब भी आप दस्तावेज में ऐसा कुछ देखते हैं तो आपको गहराई से पता लगाने की आवश्यकता होती है और पता लगाना चाहिए कि क्या वे 'malloced' सूचक की सलाह देते हैं क्योंकि वे सी शब्दावली का उपयोग कर रहे हैं या क्योंकि फ़ंक्शन को realloc() या free() कॉल करने की उम्मीद है। नीचे दिए गए सबसे ज्यादा वोट किए गए उत्तर पूर्व मानते हैं, हालांकि मुझे विश्वास है कि जिस फ़ंक्शन का आप उल्लेख कर रहे हैं उसे बाद में मार्टिन के अंक के रूप में करना होगा। मॉलोक/फ्री और नया/गलत तरीके से मिटाना ठीक नहीं है, इसलिए जब आप आते हैं तो विशिष्ट कार्यों पर अतिरिक्त शोध करना सर्वोत्तम होता है। –