unsafe - Nested calls can lead to uninitialized arguments in C? -


क्या लेन सही ढंग से आरंभ और set_array कॉल में सुरक्षित है?

  शून्य object_copy (ऑब्जेक्ट * स्व, ऑब्जेक्ट * obj) {int len; Object_set_array (आत्म, object_get_array (obj, और len), लेन); }  

यदि नहीं, तो आप क्या सुझाएंगे?

नहीं - फ़ंक्शन कॉल में तर्क के लिए मूल्यांकन का कोई परिभाषित आदेश नहीं है।

भले ही object_get_array () को कॉल को object_set_array () से कॉल करने से पहले, उस मान को संकलक गणना और पास करता है < object_get_array () को कॉल करने से पहले कोड> ऑब्जेक्ट_सेट_अरे () लेन पैरामीटर के लिए किया जा सकता है।

I ' मुझे यकीन नहीं है कि object_set_array () कॉल के लिए 2 पैरामीटर क्या करना है - शायद आप अल्पविराम ऑपरेटर का उपयोग करना चाहते हैं:

  शून्य object_foo (ऑब्जेक्ट * सेल्फ) , वस्तु * obj) {int len; Object_set_array (स्वयं, (object_get_array (obj, और len), लेन)); }  

कौन काम करेगा, लेकिन भ्रामक है और कुछ जिसे मैं सुझाऊंगा।

मुझे लगता है कि आप क्या चाहते हैं:

  शून्य ऑब्जेक्ट_फू (ऑब्जेक्ट * सेल्फ, ऑब्जेक्ट * ओबजे) {int len; Object_get_array (obj, और लैन); // obj object_set_array (स्व, लेन) से लंबाई प्राप्त करें); // स्वयं के लिए लेन सेट करें  

Comments

Popular posts from this blog

oracle - The fastest way to check if some records in a database table? -

php - multilevel menu with multilevel array -

jQuery UI: Datepicker month format -