| | |
| Stránka: 1 z 1
| [ Príspevkov: 11 ] | |
Autor | Správa |
---|
Registrovaný: 18.10.10 Prihlásený: 30.12.13 Príspevky: 57 Témy: 13 Bydlisko: Tvrdošín | Napísal Buba: 17.03.2011 17:52 | |
|
Takto zacinam stymto programovacim jazykom a mam takyto problem napisal som toto
Kód: #include <iostream> int Sucet(int x, int y) { std::cout << "Vo funkcii Sucet(), prijato " <<x << " a " << y << "\n"; return (x+y); } int main() { using std::cout; using std::cin; cout << "Vo funkcii main()!\n"; int a, b, c; cout << "Vlozte dve cisla: "; cin >> a; cin >> b; cout << "\nVolanie funkcie Sucet()\n"; c=Sucet(a,b); cout << "\nZpet k funkcii main().\n"; cout << "c bolo nastavene na " << c; cout << "\nKoniec...\n\n"; return 0; }
ked to zkompilujem a sputim tak mi vypise ze Funkia sucet a potom zadajte cisla dam napr 3 a 6 a ked stiknem enter tak mi program vypne robilo mi to aj pri inom programe(spustim som program a hned v monente ho vyplo)ale vyriesil to int x;
std::cin >> x;
ale neviem kde mam tento kod napisat teraz ci pred ci za ked to napisem na koniec pred return nic sa nezmeni. Prosim poradte kde mam napisat alebo neaky lepsi editor alebo co ja mam Dev-C++
// Kod patri do [code]! Ďuri
|
|
Registrovaný: 02.07.06 Prihlásený: 24.04.24 Príspevky: 14183 Témy: 312 Bydlisko: Bratislava |
ak si dobre pamatam, mohlo by stacit napisat pred "return" Kód: cin.get();
_________________ PODPIS BOL UPRAVENÝ / ZMAZANÝ Z DÔVODU PORUŠOVANIA PRAVIDIEL FÓRA! |
|
Registrovaný: 18.10.10 Prihlásený: 30.12.13 Príspevky: 57 Témy: 13 Bydlisko: Tvrdošín | Napísal autor témy Buba: 18.03.2011 19:18 | |
|
no ked to napisem a sputim tiez ze mam napisat cisla ale ked napisem dam enter tak mi to zas vypne
|
|
Registrovaný: 20.03.11 Prihlásený: 08.09.11 Príspevky: 7 Témy: 0 Bydlisko: Košice | Napísal PolyKE: 20.03.2011 15:22 | |
|
Ja používam CodeBlocks a keď som to tam skopčil, tak mi všetko ide normálne.
Ináč... aj ja som jeden čas používal Dev-C++, ale viacerí sa naňho sťažovali, že nie je dobrý, tak som prešiel na CodeBlocks a som spokojný
|
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | Napísal chrono: 20.03.2011 16:02 | |
|
Spúšťaj to priamo cez terminál (alebo ako sa to volá vo Windows), prípadne sa pozri do vlastností, či sa tam nedá nastaviť, aby sa ten terminál potom automaticky nezatvoril.
PS: Ten tvoj problém nemá vôbec nič spoločné s editorom.
|
|
Registrovaný: 18.10.10 Prihlásený: 30.12.13 Príspevky: 57 Témy: 13 Bydlisko: Tvrdošín | Napísal autor témy Buba: 20.03.2011 16:50 | |
|
tak kompilarom ? este mi to nieje jasne editor je program kde sa pise text a kompilar zase program s ktoreho mozme vytrotit program ?:) inak dakujem za rady tato ochota to je super
|
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | Napísal chrono: 20.03.2011 18:31 | |
|
Nemá s tým nič ani kompilátor.
Problém je autor toho kódu a/alebo ten, kto to spúšťa, pretože nevedia, ako sa spúšťajú konzolové programy vo Windows.
|
|
Registrovaný: 20.03.11 Prihlásený: 01.11.11 Príspevky: 27 Témy: 0 |
Existuje veľa spôsobov ako podržať výstup. Napríklad to spustíš priamo cez Príkazový riadok alebo zavolaj pred príkazom return 0; dvakrát cin.get();.
Kód: ... cin.get(); cin.get();
return 0;
S editorom ani kompilátorom to nič nemá ;-)
|
|
Registrovaný: 09.04.11 Prihlásený: 11.01.14 Príspevky: 257 Témy: 26 Bydlisko: Kesa |
ja som dával po každom cin>> ...; vždy cin.get() a ešte jedno pred return...asi ako C# potrebuje readline aby ti to zobrazilo (prečítal), tak aj c++ potrebuje toto cin.get()
_________________ NB - HP Pavilion DV7 3190 -- Windows® 7 Home Premium 64-bit -- Intel® Core™ i7-720QM 1,6 GHz az 2,8 Ghz Turbo Boost, 6 MB pamäte cache úrovne 2 -- 4 GB DDR3 -- disk 640 GB SATA 5400 ot/min -- rozlíšenie 1600 x 900 -- NVIDIA® GeForce® GT 230M -- 2 815 MB grafickej pamäte s vyhradenou pamäťou 1 GB DDR3 -- pripojenie 802.11 a/b/g/n |
|
Registrovaný: 02.11.07 Prihlásený: 18.03.15 Príspevky: 470 Témy: 22 Bydlisko: Zilinska Un... |
To, ze ti to vypina, nie je chyba, ale tak to ma byt a tak je to spravne, proste program sa ukonci, tak sa za nim zatvoria aj vsetky prostiedky, ktore nim boli otvorene a tym je aj konzola. Proste musis dat na koniec nieco, co ti ten program nezatvori, ale podrzi, ako ti tu pisali. Alebo pustaj ten program manualne z konzoly a ti ju nezavre po ukonceni programu. Ale podla mna najlepsie riesenie je dat cely kod do nekonecneho cyklu (while(...)) a dat tam neaku podmienku na ukoncenie programu (cyklu), na podobnom principe pracuju aj skutocne programy . Prajete si ukoncit program Y/N ? _
A to Dev-C++ odinstaluj a zoblukuj si nan stranku a nikdy to uz nepouzivaj . Stiahnisi http://www.codeblocks.org/
_________________ Notebook: HP EliteBook 8740w
You can see my work in my www |
|
Registrovaný: 20.03.11 Prihlásený: 01.11.11 Príspevky: 27 Témy: 0 |
To že sa program vypne je kvôli tomu, ako pracuje objekt cin s preťaženým operátorom >>:
Celý vstup, ktorý zadáš pomocou klávesnice sa načíta do bufferu. Objek cin s operátorom >> si z tohto bufferu berie znaky pokým nenarazí na prvý biely znak v našom prípade Enter(ASCII-#10) a vtedy ukončí vstup(v prípade reťazca doplní o znak null(\0)), ale enter nechá vo vstupnom buffery, takže ďalším vstupom bude Enter, teda opäť biely znak. Preto sa musí použiť 2x cin.get();
Kód: cin.get(); // prečíta enter zo vstupného buffera cin.get(); // čaká na ďalší vstup
Pozri na tento program: Kód: #include <iostream> using namespace std;
int main() {
int cislo; cin >> cislo;
if(cin.peek() == '\n') cout << "Dalsi na rade je ENTER s ASCII kodom " << cin.peek() << endl; cin.sync(); // Vymaže vstupný buffer cin.get(); return 0; } Tu nám postačí iba jeden cin.get(); pretože sme celý buffer vymazali. Jednou z možností je aj použiť: Kód: #include <cstdlib> ... system("pause");
Je to to isté ako keď napíšeš do príkazového riadku pause. Toto funguje iba pod Win.
|
|
| Stránka: 1 z 1
| [ Príspevkov: 11 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| Asi mam zlý HDD v Pevné disky a radiče | 6 | 540 | 14.02.2010 15:35 Aulen | | C editor + compiler v Assembler, C, C++, Pascal, Java | 5 | 244 | 12.02.2013 20:08 BX | | Editor na programovanie v jazyku C v Assembler, C, C++, Pascal, Java | 4 | 822 | 27.10.2007 16:44 audiotrack | | Mám sa učiť C ++/objective C/ C#? v Assembler, C, C++, Pascal, Java | 5 | 733 | 08.07.2014 20:40 XOLOO | | Editor v Video programy | 2 | 469 | 17.11.2011 17:13 Thrine | | Realtime editor v Ostatné | 4 | 558 | 11.02.2011 19:51 rooobertek | | Video editor v Video programy | 2 | 615 | 28.02.2016 23:34 SKRiPT | | .SWF editor v Webdesign | 12 | 2478 | 15.03.2008 17:44 kaidžas | | CKE Editor v PHP, ASP | 2 | 355 | 30.01.2012 19:03 black1101 | | fck editor v Ostatné | 1 | 568 | 03.09.2008 22:23 programator | | Editor Grafiky v Ostatné programy | 3 | 703 | 14.06.2007 0:35 johny128 | | Video Editor v Video programy | 8 | 617 | 06.10.2012 23:23 MicQo | | PHP editor v Ostatné | 10 | 1055 | 28.06.2009 0:25 MKI-Miro | | Textovy editor v HTML, XHTML, XML, CSS | 7 | 592 | 09.03.2009 0:01 shaggy | | Music editor v Audio programy | 10 | 707 | 04.02.2010 13:14 camo | | php editor v PHP, ASP | 28 | 785 | 22.03.2013 12:38 walther |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|