Kezdőoldal » Számítástechnika » Programozás » Mindegy hogy melyik változatot...

Mindegy hogy melyik változatot használom C++ ban?

Figyelt kérdés

/* Egy programozó belém kötött hogy az int main függvényben nem hagyható el a return 0 pedig lefordul nélküle mi a helyes? Visual studiot hasznalok */


int main() {} // egyik haveromnak csak így fordul le a kód

short main {} // Így is működik.

void main() {} /* ezt használnám.És így is jó mindenhogy jó. */


2011. szept. 27. 21:48
 1/10 anonim ***** válasza:
Elég súlyos probléma, ha nem érted a típusokat, és így akarsz programozni a vak világba.
2011. szept. 27. 22:09
Hasznos számodra ez a válasz?
 2/10 A kérdező kommentje:

Értem a típusokat.Ha tudom,hogy a main függvény nem fog vissza adni értéket akkor void main()lesz.



De valakinek baja van ezzel.

2011. szept. 27. 22:16
 3/10 anonim ***** válasza:

"/* Egy programozó belém kötött hogy az int main függvényben nem hagyható el a return 0 pedig lefordul nélküle mi a helyes? Visual studiot hasznalok */"


Igaza van.


"int main() {} // egyik haveromnak csak így fordul le a kód

short main {} // Így is működik.

void main() {} /* ezt használnám.És így is jó mindenhogy jó. */"

Ezek közül egyik sem helyes, int main(){return 0;} helyes.

Ha korrekt lenne a fordító akkor a fenti 3 változat egyikét sem fordítaná le. Az ISO C++ szabványa szerint csak az fordítható a 3 közül ami egyik haverodnak.

Egyáltalán tisztába vagy a c++ - beli függvényekkel? A main függvényt ki hívja meg és hova tér vissza?

2011. szept. 27. 22:27
Hasznos számodra ez a válasz?
 4/10 A kérdező kommentje:

Nem tudom,hogy a maint ki hívja meg nem volt leírva a könyvben.

tanuljuk meg a c++ programozási nyelvet 24 óra alatt című könyv.

2011. szept. 27. 23:29
 5/10 A kérdező kommentje:
Akkor a visual studio rosszul fordít?
2011. szept. 27. 23:30
 6/10 A kérdező kommentje:
Mert nekem lefordítsa mindenképp a maint.
2011. szept. 27. 23:30
 7/10 anonim ***** válasza:
A main t te hivod meg.
2011. szept. 27. 23:55
Hasznos számodra ez a válasz?
 8/10 anonim ***** válasza:

"Nem tudom,hogy a maint ki hívja meg nem volt leírva a könyvben."

Az gondolom le volt írva ha van egy függvényem ami nem void visszatérési értékű akkor mindig kell bele return. A main-t az operációs rendszer hívja meg illetve a hívó program kvázi a programod tekinthető egy függvénynek ami a main függvény, visszatérési értékét a hívó program kapja meg illetve az operációs rendszer. Ha a main 0-ával tér vissza az azt jelenti hogy sikeresen lefutott a program, ha 1-el az hibát jelent, egyéb érték nem szokott lenni, de egyéni megállapodás szerint lehet más is. Ha hiányzik az int main-nek a return 0 akkor nem garantált hogy 0-ával tér vissza. Mondhatod hogy ezt az értéket nem használja fel semmi (jelen esetben), de legyünk tisztába a szabályos programírással, adott esetben nagy szívás lehet ha így szoktad meg.


"Akkor a visual studio rosszul fordít?"

Egyéni "tájszólása" van a fordítónak. Sok fordítónál van olyan hogy adott kódot lefordít de a másik nem, nem ISO C++ szabványos kódról van szó. Nem véletlenül van szabvány.

Próbáltam nagyobb programot fordítani GNU GPL licenc-ű programot, ott a melegebb éghajlatra elküldeném aki nem szabványos kódot írt és a miatt nem fordul és ott kell vele kínlódni, hiába használom ugyan azt a fordítót mint ő ha a fordítási beállítások nem egyeznek meg.


Ha tanultad volna egyetemen és kötelező programot kellett volna írnod és nem fordul a kód az ő gépükön, akkor nem érdekli őket nem fogadják el.

Megoldás: a fordítót szigorú szabványkövetési módba kell állítani.

2011. szept. 28. 09:46
Hasznos számodra ez a válasz?
 9/10 A kérdező kommentje:
Hogyan állíthatom szigorú szabványkövetési módba a visual studiót?
2011. szept. 28. 18:45
 10/10 A kérdező kommentje:
Amúgy kösz a kioktatást ment a zöld kéz.
2011. szept. 28. 18:45

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!