ماذا يجب أن تُرجع الدالة main() في C++: void، int أم شيء آخر؟
مرحباً بالجميع! لقد بدأت مؤخراً في تعلم لغة C++، وحدث لديّ بعض الالتباس بشأن الدالة `main()`. في مصادر مختلفة رأيت تعريفات مختلفة: في بعض الأماكن يكتبون `int main()`، وفي أخرى `void main()`، وأحياناً حتى `main()` دون تحديد النوع. جربت كتابة برنامج بسيط:
```cpp
#include
using namespace std;
void main() {
cout << "Hello, world!" << endl;
}
```
في Visual Studio تم تجميعه وعمل بالفعل، لكن على مُجمّع آخر (g++) أظهر خطأ: `'::main' must return 'int'`. لماذا هذا؟ ماذا يجب أن تُرجع `main()` في الواقع؟ وهل أحتاج إلى إرجاع شيء في النهاية إذا كتبت `int main()`؟ هل سيعمل إذا لم أكتب أي شيء في `return`؟ وسؤال آخر: ما الذي تُرجعه `main()` بالضبط ولمن هو مطلوب؟ اشرحوا لي، من فضلكم، كمبتدئ، كيف أكتب نقطة الدخول للبرنامج في C++ بشكل صحيح.
<<>>
الإجابة الصحيحة: main() يجب أن تُرجع int دائماً
في معيار C++ (و C) مذكور بوضوح: الدالة main() يجب أن تُرجع int.