בכל מערכת הפעלה בערך
למשל ביוניקס על גרסאותיה, בלינוקס על גרסאותיה, בDOS על גרסאותיה ובWINDOWS על שלל גרסאותיה, כשתוכנית רוצה להסתיים היא מחזירה ערך כלשהו (שבדרך כלל מעיד האם היא הצליחה או לא). מכיוון שהחזרת הערך נדרשת על ידי מערכת ההפעלה, הגיוני עד מאוד שיהיו חייבים להחזיר ערך. ודרך אגב, הסטנדרט האחרון של C++ קובע במפורש, שאמנם main חייבת להיות מוגדרת כמחזירה int, אבל אין הכרח לכתוב בה משפט return מפורש, אלא אפשר פשוט להשמיט אותו, ואז בצורה אוטומטית יוחזר 0.