5
मैं execl
के बजाय execv
का उपयोग करता हूं। execv
का उपयोग करने के लिए, मैं एक सरणी बनाता हूं और तर्क देता हूं जिसका उपयोग मैं execl
के साथ करता हूं। फिर मैंने इस सरणी को execv
execl और execv के बीच क्या अंतर है?
मुझे पता है कि मुझे execv
के लिए तर्कों की एक सरणी का उपयोग करना है, लेकिन क्यों? execl
और execv
के बीच क्या अंतर है?
हमें तर्कों के स्वरूप को बदलने की आवश्यकता क्यों है? मेरा मतलब है कि अगर वे एक ही काम कर रहे हैं –
'execve()' सिस्टम कॉल (और 'execv()') एक सरणी में तर्क लेते हैं। 'execl()' केवल एक सुविधा के रूप में प्रदान किया जाता है, यदि आपके पास एक निश्चित संख्या में तर्क हैं, तो आपको सरणी सेट करने की समस्या से बचने के लिए अनुमति मिलती है। 'execl()' फ़ंक्शन तर्कों को एक अस्थायी सरणी में ही संग्रहीत करेगा और फिर सिस्टम कॉल करेगा। यदि आप स्वयं तर्क तर्क सेट अप करते हैं तो आपको 'execl() 'की आवश्यकता नहीं है। – mark4o