Avatar billede tast Nybegynder
13. august 1999 - 22:20 Der er 7 kommentarer og
1 løsning

int main() eller void main(void)???????

Jeg har erhvervet mig to forskellige bøger og undrer mig lidt!!!!

i den ene starter de programmet med:

int main()
{

og i den anden bog starter de med:

void main(void)
{

Har det nogen betydning om man bruger den ene eller den anden?

Tast
Avatar billede 127144146281 Nybegynder
13. august 1999 - 22:26 #1
Næe ikke rigtigt, void betyder jo "igenting"
Avatar billede rbnstudio Nybegynder
13. august 1999 - 22:36 #2
Forklaring:
Det der står får funktionsnavnet...f.eks main, er det som der bliver returneret når funktionen er afsluttet. Det der står i () efter funktionsnavnet, er det man tager med ind i funktionen ved kald af denne.


int main()....er fordi at den variabel som man returnere er af typen integer.

void main(void)....sendes der ikke noget til funktionen, og der modtages heller ikke nogen variable fra funktionen.
Avatar billede rbnstudio Nybegynder
13. august 1999 - 22:37 #3
Stavefejl....Det der står før funktionsnavnet....main...

...og ja....void betyder ingenting, så hvis man ikke øsker at putte noget ind i funktionen og heller ikke ønsker noget retur, så hedder det bare

void main(void)
Avatar billede chruker Nybegynder
13. august 1999 - 22:52 #4
Jeg har vist nok hørt at kun int main() udgaven er tilladt i C++
Avatar billede cbp Nybegynder
13. august 1999 - 22:57 #5
Ofte bruger man i main() at returnere en int, da main-funktionens returværdi bliver givet videre til styresystemet. Hvis man returnerer 0 fortæller man styresystemet at programmet er afsluttet korrekt. Hvis man returnerer en anden værdi end 0 fortæller man at der er sket en fejl under kørslen af programmet.

Så jeg ville foretrække at bruge
int main()
{
int error = 0;

...
..

return error;
}

og så sætter error til noget større end nul, hvis der skulle ske en fejl under kørslen af programmet.
Avatar billede bjarke Nybegynder
14. august 1999 - 08:58 #6
returværdien fra main kan f.eks. bruges, hvis man kører programmet via en bat-fil. I batfilen kan man så bruge funktionen 'errorlevel'.
Avatar billede skovlunde Nybegynder
14. august 1999 - 21:09 #7
I følge ANSI/ISO standarden (1992) skal main funktionen for et C++ program være af typen int og, som før skrevet, returnere 0 ved korrekt eksekvering. Endvidere er den helt korrekt (dogikke et krav) at tilføje kommando linierne med i funktionen så den bliver:

int main( int argc, char* argv[] )
{
}

Avatar billede tast Nybegynder
25. august 1999 - 22:08 #8
Okay....
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester