| Adixuuu a întrebat:

Sunt incepatoare la programul C si nu inteleg de ce unii prefera sa foloseasca functia int main, iar altii void main. Care este diferenta intre ele si pe care este bine sa o folosesc?
Profesorul spunea ca void, dar nu a explicat de ce.

2 răspunsuri:
| al9264 a răspuns:

Void sugereaza ca programul nu returneaza neaparat valori, dar (cred) ca poate returna siruri de caractere (gen ii spui ca in caz ca se intampla o conditie anume sa returneze o steluta, sau o litera, sau altceva, dar nu o valoare). in int main poti sa introduci variabile gen x sau y si sa ii spui ceva de genul "daca (x+y>3) cout

| Algo098 a răspuns:

Eu sunt tot incepator si zic din amintiri ce am inteles eu.

In C, programele nu merg pana nu au functia main prezenta in ele, functie in care se scriu comenzile utile ale programului.

Int sau void din fata unei functii, in cazul nostru, in fata functiei main, indica tipul valorii returnate de functia main.
Daca punem int, atunci functia main va returna un numar intreg, iar daca punem void, atunci nu se asteapta nici un rezultat de la functia main.

Poate e ok sa punem int si la sfarsit sa scriem return 0; ca functia sa returneze un 0 dupa executarea ei. Daca punem void, atunci functia main nu va returna nimic.

In ambele cazuri nu e nimic in plus sau in minus, merge oricum, Diferentele sunt minime si oricum, de la functia main nu asteptam nimic ca rezultat, vrem doar sa se execute comenzile din interiorul ei, adica programul nostru, asa incat ori cu int, ori cu void, rezultatul va fi acelasi.
int = tipul de variabila intreaga si daca apare in fata unei functii ne va arata ca acea functie dupa executare va stoca intr-o variabila si un rezultat: un numar intreg

void = un tip nedefinit de variabila, deci un tip de variabila pentru care nu se aloca spatiu in memoria calculatorului, deci void indica programului absenta variabilei, iar in fata functiei indica faptul ca nu se asteapta nici un rezultat care sa fie returnat in urma executarii functiei.