सी में, मैं जानता हूँ कि मैं इसक्या एक (पुनः) एक सरणी के सभी मानों को एक पंक्ति में सेट कर सकता है (इसे प्रारंभ करने के बाद)?
int myarray[5] = {a,b,c,d,e};
की तरह एक सरणी बना सकते हैं हालांकि, कल्पना सरणी पहले से ही की तरह
int myarray[5];
initialised गया था और तब कुछ बिंदु बाद में, मैं/परिवर्तन सेट करना चाहता था
myarray[0] = a;
myarray[1] = b;
myarray[2] = c;
myarray[3] = d;
myarray[4] = e;
जा रहा बिना सभी मूल्यों लेकिन
बल्कि, कुछ अधिक की तरहmyarray = {a,b,c,d,e};
कारण है कि मैं पूछता हूँ इस वजह से अगर मैं ढेर पर मेरी सरणी घोषित, मैं जैसी सरणी आरंभ होगा:
int* myarray = malloc(5*sizeof(int));
तो मैं में सभी मूल्यों में प्रवेश करने के लिए सक्षम होने के लिए चाहते हैं एक पंक्ति (ज्यादातर मेरे कोड को क्लीनर बनाने के लिए)
क्या यह सी 99-केवल नहीं है? –
हां। लेकिन जब कोई टेम्पलेट का उपयोग कर सी ++ उत्तर देता है, तो क्या उसे एक टिप्पणी की आवश्यकता होती है जिसके लिए सी ++ 98 की आवश्यकता होती है? या जब मैं सी में फ़ंक्शन प्रोटोटाइप का उपयोग करता हूं, तो क्या मुझे यह उल्लेख करने की आवश्यकता है कि यह प्री-एएनएसआई सी कार्यान्वयन में काम नहीं करेगा? सी 99 ** ** वर्तमान सी भाषा है। –
@R .: दुर्भाग्य से कई लोग C89 के साथ फंस गए हैं, उदा। माइक्रोसॉफ्ट के पास अभी भी विजुअल स्टूडियो में सी 99 समर्थन नहीं है, और कई छात्रों को अभी भी टर्बो सी जैसे पुरातन कंपाइलर्स का उपयोग करना है, इसलिए शायद यह मानने के लिए उचित नहीं है कि अधिकांश लोग सी 99-विशिष्ट विशेषताओं का उपयोग करने में सक्षम हैं। –