Kezdőoldal » Számítástechnika » Programozás » Elindítottam a Microsoft...

Elindítottam a Microsoft Visual 2010 c++ express -t, és miközben olvastam a tanuljunk meg programozni c++ nyelven -t, azt vettem észre hogy nem működik az a parancssor amiket beírtam?

Figyelt kérdés

A könyvben ez áll:

#include <iostrearn>


int main()

{

std::cout << "Hello World!\n';

return 0;

}

viszont ezzel csak egy tized mp. -re jelent meg, egy csomó hiba üzenetet kaptam stb... Aztán láttam egy másik hello word programot máshol ( nem akarok ott tanulni, csak mondom hogy láttam ) ahol ez volt:

#include <iostream>


int main() {

std::cout << "Hello World!" << std::endl;

std::cin.get();

return 0;

}


ezzel 0 hiba üzenetet kaptam, és egyből futott a program, és nem tűnt el a hello world. Mi lehet a baj?



2013. máj. 12. 20:49
 1/2 anonim ***** válasza:

Break point-ot kell le raknod ha meg akarod állítani kilépés előtt a program futását, hogy lásd az eredményt.


A második kódsorban a cin.get() parancs miatt nem lép ki a program azonnal, hanem megvárja, hogy lenyomj egy billentyűt.


Viszont ha ennyire nem érted még mi történik, akkor javaslom olvasgass valami bevezető irodalmat. Például olyanokat, hogy mi az a programozás, mi az a soros utasítás végrehajtás, meg cplusplus.com-on olvass el minden parancshoz tartozó leírást, amit használsz!

2013. máj. 12. 21:26
Hasznos számodra ez a válasz?
 2/2 anonim ***** válasza:

A hibaüzeneteket valószínűleg az <iosteaRN> miatt kaptad, az <iostreaM> a hivatalos neve.


Mikor fordítasz, a fordító egy csomó ellenőrzést és optimalizálást végig tol a forráson, ebből a legelső az előfordítás, ami például feldolgozza a # utáni dolgokat. Ez, mivel nem talál iostrearn nevű állományt sehol, figyelmeztet, és nagy valószínséggel le sem fordul.


Mikor futtatod a programot, és a main függvény fut, az soronként végrehajtódik. A return 0 utasítás után pedig vége van a programnak. Minden erőforrása felszabadul. Ahhoz, hogy ez ne történjen meg, várakoztathatod, például a cin.get()-tel. Ilyenkor egy tetszőleges leütésre vár.


Semmi baja nincs a másodiknak, ez teljesen természetes. Az első viszont már eleve hibás egyrészt az include miatt, másrészt a kiiratásnál "" helyett "' van. Valószínűleg ezért is sír.


Azzal nyilván tisztában vagy, hogy az std::endl; ( std névtérből származó művelet ), ugyan azt jelenti, mint a \n.

2013. máj. 12. 23:13
Hasznos számodra ez a válasz?

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!