Det finns säkert någon här som kan förklara bättre men jag har för mig att OS förväntar sig en 0 tillbaka från programmet vilket säger att exekveringen gick bra.
En 1:a säger att något gick fel.
Man behöver inte returnera 0 eller 1, men vissa kompilatorer kräver det. Det kan dock vara lämpligt att returnera för att vara konsekvent (int(main)) säger ju att det ska retuurneras ett värde...
Jag gjorde ett nybörjar fel och skrev #import <iostream> istället för #include. Men programmet funkade iaf, jag fick rätt utskrift. Vad beror det på? Om jag fattat rätt så ska <iostream> inehålla saker så att man kan använda cout. I detta fall då borde det ju inte bli ngn utskrift, eller?
The line return (0); is used to tell the operating system (UNIX or MS-DOS Windows) that the program exited normally (Status=0).
A nonzero status indicates an error [...]
Det brukar gå att skippa returnsatsen i main, varpå kompilatorn automagiskt lägger till att main returnerar 0. Dessutom hade man i K&R C (d.v.s., innan standardiseringen) möjligheten att ha en void main i stället för int main, och vissa kompilatorer tillåter det fortfarande.
Jag gjorde ett nybörjar fel och skrev #import <iostream> istället för #include. Men programmet funkade iaf, jag fick rätt utskrift. Vad beror det på? Om jag fattat rätt så ska <iostream> inehålla saker så att man kan använda cout. I detta fall då borde det ju inte bli ngn utskrift, eller?
Direktivet kan nog verka vara samma effekt som #include men i bakgrunden så händer mycket mer om man kör #import.
i <cstdlib> finns följande konstanter som man kan använda med exit():
EXIT_SUCCESS 0 //Normal termination
EXIT_FAILURE 1 //Abnormal termination. Error in process.
131 ms totalt · 3 externa anrop · v20260731065814-full.02a0f7de