सी, सी ++, जावा या सी # में मुख्य() (या मुख्य()) उपयोगकर्ता द्वारा परिभाषित फ़ंक्शन या अंतर्निर्मित फ़ंक्शन है?मुख्य() सी, सी ++, जावा, सी #
उत्तर
यह एक उपयोगकर्ता परिभाषित समारोह के लिए आवश्यक है कि एक कार्यक्रम पर अमल करने के लिए है। जब आप संकलित भाषा में अपना प्रोग्राम चलाने के लिए जाते हैं, तो main
फ़ंक्शन निष्पादित किया जाता है। उदाहरण के लिए, जावा में, यदि आपके पास कक्षा में public static void main(String ... args)
हस्ताक्षर का फ़ंक्शन है तो उस वर्ग को निष्पादित किया जा सकता है, क्योंकि JVM उस main
विधि की सामग्री निष्पादित करेगा। जावा में
उदाहरण:
public class Test {
public static void main(String ... args) {
System.out.println("Hello World");
}
}
...
javac Test.java
... "नमस्ते विश्व" में
java Test
परिणाम कंसोल के लिए मुद्रित किया जा रहा।
सी/सी ++ में, यह मानक है इसलिए इसका निर्माण और पुन: उपयोग किया गया।
जावा, यकीन नहीं, कोई अनुभव नहीं
सी # - एक वर्ग की यह एक हिस्सा है ताकि आप के द्वारा अपने को परिभाषित किया।
इन सभी को आपके द्वारा परिभाषित किया गया है - आप बताते हैं कि क्या करना है।
यह एक आवश्यक उपयोगकर्ता परिभाषित समारोह (निष्पादनयोग्य के लिए प्रवेश बिंदु) ...
यह किसी भी भाषा में "अंतर्निर्मित" नहीं है, इस अर्थ में कि कोई मानक लागू नहीं है - आपके लिए मुख्य() उपलब्ध नहीं है।
सी/सी ++/जावा के लिए, यह एक विशेष संपत्ति के साथ एक समारोह है, अर्थात्, यह कार्य जो आपके स्थैतिक सेटअप के बाद आपके कार्यक्रम की शुरुआत में कहा जाएगा। जैसे पूरे सी कार्यक्रम के निष्पादन पथ है:
कुछ प्रवर्तन कोड
कॉल
main()
बाहर निकलें करो।
इस प्रकार, यह एक मानक घोषणा की है (कमांड लाइन + 'तार' की सरणी से पारित कर दिया मानकों के # - लेकिन भाषा को लागू करता है कि - जो कमांड लाइन से वास्तविक तर्क हैं)
बस एफवाईआई - "मुख्य" VB.NET में बहुत अधिक अंतर्निहित है। आपको वास्तव में इसे बेनकाब करने और अपना स्वयं का कार्यान्वयन करने के लिए काम करना होगा ... –
वीबी में मुख्य() है? (ईमानदार आश्चर्य - किसी भी बेसिक के लिए मेरा आखिरी एक्सपोजर सिंकलेयर जेड 80 पीसी स्वामित्व के दिनों में वापस था ... – DVK
यह एक उपयोगकर्ता परिभाषित फ़ंक्शन जिसे भाषा की रनटाइम लाइब्रेरी द्वारा बुलाया जाता है। उदाहरण के लिए, एक सी रनटाइम लाइब्रेरी कमांड लाइन तर्क और कभी-कभी ऑपरेटिंग सिस्टम से पर्यावरण चर को पकड़ लेगी और उन्हें आपके मुख्य() फ़ंक्शन में पास कर देगी।
अलग-अलग भाषा रनटाइम आम तौर पर एक ही रूप में एक ही रूप में एक ही ऑपरेशन करते हैं, और अगर किसी फ़ंक्शन को कॉल करने का प्रयास किया जाता है तो यह किसी प्रकार की त्रुटि फेंक देगा।
मुझे यकीन नहीं है कि अंतर्निहित बनाम उपयोगकर्ता द्वारा परिभाषित किया गया आपका क्या मतलब है। लगभग कोई भी भाषा वास्तव में आपके उपयोगकर्ता द्वारा परिभाषित फ़ंक्शन को प्रोग्राम में सही प्रविष्टि-बिंदु होने का विशेषाधिकार प्रदान नहीं करती है। सी ++, कोई भी।नेट भाषा, और जावा सभी में छिपी हुई (अंतर्निर्मित) प्रविष्टि बिंदु विधियां हैं जो बदले में आपके उपयोगकर्ता द्वारा परिभाषित मुख्य विधि (या जो भी भाषा के लिए एंट्रीपॉइंट विधि कहा जाता है) को कॉल किया जाता है - .NET में इसे कुछ भी नाम दिया जा सकता है, हालांकि सी # और वीबीएनईटी बल इसे मुख्य कहा जाता है)।
तो हां, लगभग हर भाषा में एक विधि की अवधारणा होती है जिसे स्वचालित रूप से बुलाया जाता है, और यह विधि उपयोगकर्ता द्वारा परिभाषित विधि है और आमतौर पर अनिवार्य है। लेकिन लगभग हर भाषा में एक अंतर्निहित एंट्री पॉइंट विधि भी होती है जो वास्तव में आपके उपयोगकर्ता द्वारा परिभाषित "एंट्री-पॉइंट" फ़ंक्शन को आमंत्रित करने से पहले प्रक्रिया के लिए ढांचे और/या स्मृति प्रबंधन को सेट करती है।
अच्छा जवाब। मैं बस इतना जोड़ूंगा कि 'मुख्य' नाम वास्तव में महत्वपूर्ण नहीं है, क्योंकि अधिकांश सभ्य लिंकर्स अनुमति देंगे आप मैन्युअल रूप से अपना एंट्री पॉइंट निर्दिष्ट करने के लिए। (उदाहरण के लिए/वीएस के लिए प्रवेश) – NewbiZ
इसकी घोषणा अंतर्निहित है। इसकी परिभाषा उपयोगकर्ता द्वारा आपूर्ति की जाती है, या कुछ मामलों में एक आवेदन ढांचे द्वारा आपूर्ति की जाती है जिसमें कुछ अन्य प्रविष्टि बिंदु होते हैं, या अधिकांश घटना-संचालित जीयूआई ढांचे के मामले में, कोई भी उपयोगकर्ता परिभाषित प्रविष्टि बिंदु नहीं होता है। सी स्टैंडर्ड से
उद्धरण (जोर मेरा है):
5.1.2.1 फ्रीस्टैंडिंग पर्यावरण
- फ्रीस्टैंडिंग वातावरण में ( में जो सी प्रोग्राम निष्पादन के बिना जगह ले सकता है ऑपरेटिंग सिस्टम का कोई लाभ), नाम और पर फ़ंक्शन का प्रकारप्रोग्राम स्टार्टअप कार्यान्वयन-परिभाषित हैं। फ्रीस्टैंडिंग प्रोग्राम के लिए लाइब्रेरी सुविधाएं क्लॉज 4, द्वारा आवश्यक न्यूनतम सेट कार्यान्वयन-परिभाषित हैं।
main()
, एक फ्रीस्टैंडिंग वातावरण में, बहुत ज्यादा उपयोगकर्ता-निर्धारित कार्य है।
जावा मुख्य (स्ट्रिंग [] तर्क) में सम्मेलन द्वारा अनुप्रयोगों के लिए प्रवेश बिंदु (सी ++ प्रोग्रामर आरामदायक बनाने के लिए) है। एप्लेट या सर्लेट के लिए कोड का आविष्कार अलग-अलग होता है। ध्यान दें कि एक जार में इनमें से कोई भी या इनमें से कोई भी प्रविष्टि बिंदु नहीं हो सकता है और प्रत्येक वर्ग में मुख्य हो सकता है, इसलिए दिए गए जार को कई अलग-अलग तरीकों से बुलाया जा सकता है जैसे कि वांछित।
- 1. मुख्य सी ++
- 2. मुख्य सी ++
- 3. सी/सी ++/जावा/सी #
- 4. सी/सी ++ बनाम जावा/सी #
- 5. मुख्य में सी #
- 6. सी ++: मुख्य लूप
- 7. सी # मुख्य() विधि
- 8. सी/सी ++/जावा
- 9. सी, सी ++ या जावा
- 10. सी में मुख्य के पैरामीटर ++
- 11. साझा ऑब्जेक्ट मुख्य बाइनरी, सी ++
- 12. सी # Windows सेवा मुख्य विधि
- 13. सी मुख्य लूप 100% सीपीयू
- 14. सी/सी ++ हेडर को जावा
- 15. एंड्रॉइड: जावा, सी या सी ++?
- 16. सी # जावा
- 17. सी ++ बनाम सी ++ के बीच मुख्य अंतर क्या है? नेट?
- 18. सी ++ से जावा पर स्विचिंग: मुख्य बिंदु क्या हैं?
- 19. सी या जावा
- 20. सी #
- 21. डीबग जेएनआई कोड (जावा और सी/सी ++)
- 22. जावा बनाम '#include' में सी/सी ++
- 23. स्कैला: जावा, सी #, स्कैला और सी ++
- 24. जावा जेएनआई: सी
- 25. एंड्रॉइड में सी ++ बनाम जावा
- 26. एसआईजीआईजी जावा सी ++
- 27. कौन सी में मुख्य कार्य कॉल
- 28. सी ++ मुख्य() एक बड़े OOP में परियोजना
- 29. सी # WinForms: कैसे मुख्य समारोह STAThreadAttribute
- 30. सी # में घटनाक्रम का मुख्य उद्देश्य
यदि आप लिंकर को प्रवेश बिंदु के रूप में किसी अन्य फ़ंक्शन का उपयोग करने के लिए कहते हैं तो यह आवश्यक नहीं है। –
@Ryan - हम में से कुछ (* खांसी * जावा * खांसी *) एक लिंकर होने के मीठे विशेषाधिकार का आनंद नहीं लेते हैं। – ChssPly76
@Ryan - हम में से कुछ (* खांसी * मुझे * खांसी *) अगर हमें नहीं करना है तो एक लिंकर के साथ लड़ना पसंद नहीं है;) – aperkins