मैं एक प्रोग्राम है जो कमांड लाइन तर्क को स्वीकार कर सकते हैं और मैं एक समारोह से, तर्क, उपयोगकर्ता द्वारा दर्ज का उपयोग करना चाहते हैं। कैसे मुझे लगता है कि कार्य करने के लिए int main(int argc, char *argv[])
से *argv[]
पारित कर सकते हैं? मैं संकेत की अवधारणा के लिए नए की तरह कर रहा हूँ और मुझे मेरे हाल पर इस बाहर काम करने के लिए *argv[]
थोड़ा बहुत जटिल लग रहा है।मैं मुख्य कार्य * argv [] को फ़ंक्शन में कैसे पास कर सकता हूं?
विचार है कि मैं अपने main
को सभी कामों को ले जाकर जितना संभव हो उतना स्वच्छ छोड़ूं, कि मैं पुस्तकालय फ़ाइल में तर्कों के साथ करना चाहता हूं। मैं पहले से ही पता है कि मैं जब मैं main
बाहर उनमें से काबू पाने के लिए प्रबंधन उन तर्कों के साथ क्या करना है। मुझे नहीं पता कि उन्हें वहां कैसे पहुंचाया जाए।
। अग्रिम धन्यवाद।
के बारे में क्या के रूप में यह कॉल करने के लिए जब argv * argv [] स्थिरांक चार के रूप में परिभाषित किया गया है तय कर सकते हैं? ओएस एक्स कैसे है, और मैं वास्तव में ऐप्पल के एबीआई को नहीं बदल सकता ... – MarcusJ
@MarcusJ हाँ - एआरसी ओएसएक्स पर एक्सकोड में इसके रास्ते में आता है। मुझे उन्हें अपने ओबीजेसी ++ क्लास विधि में पास करना पड़ा जैसे 'GetParams (argc, argv)', लेकिन फिर उस कार्य को 'स्थिर std :: map getParams (int argc, कॉन्स चार ** argv) '' ** argv' नोट करें। फिर, कक्षा विधि के अंदर, मैं सामान्य रूप से 'argv' का उपयोग कर सकता था जैसे कि यह 'मुख्य' फ़ंक्शन में था। (रिटर्न परिणाम पर 'मैप' सामान इसलिए था क्योंकि मेरे फ़ंक्शन ने चर = कुंजी मैप जोड़े में चर बदल दिया। ऐसा नहीं है कि आप यह भी कर सकते हैं।) –
Volomike