Konec programu – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Konec programu – C / C++ – Fórum – Programujte.comKonec programu – C / C++ – Fórum – Programujte.com

 

Idospekr
~ Anonymní uživatel
2 příspěvky
25. 12. 2012   #1
-
0
-

Ahoj mám problém v překládání programu.

mám základní program např:

#include <stdio.h>
int main(void) {
  printf("Hallo world");
  return 0;
}

a po zkompilaci v programu DEV-C++ a následém ladění se příkazová řádka objeví tak na půl sekundy a a hned se zavře.

Vím že tam chybí konec C# to bylo Console.ReadLine(); ale tady nevim jaky to má být.

díky

Nahlásit jako SPAM
IP: 62.209.230.–
KIIV
~ Moderátor
+43
God of flame
25. 12. 2012   #2
-
0
-

pokud budes hledat, tak zjistis ze se to tu resi kazdou chvili...  ja treba takove programy co vynucujou interakci nesnasim... neda se tomu pak nic podstrcit ze souboru...

nejlepsi je to proste spustit z terminalu (coz uz dneska snad nikdo ani neumi)

blby reseni je spustit externi prikaz pause (funguje jen ve woknouzech)

pripadne pouzit google a zjistit jak se nacita v C radek...


http://www.fredosaurus.com/notes-cpp/ide/devcpp.html  na konci

Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Idospekr
~ Anonymní uživatel
2 příspěvky
25. 12. 2012   #3
-
0
-

díky už to jede

Nahlásit jako SPAM
IP: 62.209.230.–
Tycek
~ Anonymní uživatel
1 příspěvek
25. 12. 2012   #4
-
0
-

A co tam dát knihovnu conio.h a použít příkaz getch(), který čeká až uživatel stiskne klávesu a dát ji nakonec programu?

Nahlásit jako SPAM
IP: 90.178.235.–
RePRO0
Super člen
25. 12. 2012   #5
-
0
-

Zdravím,

těch možností je plno, ale jak píše KIIV, system("PAUSE") má strašně moc nevýhod. Nejvíc mi na tom vadí, že to tak učí na školách a kdekoliv možně...

Pro C používám f-ci getchar(). Pro C++ potom f-ci cin.get().

system("PAUSE") dělá v pár krocích:

  1. pozastaví se náš program 
  2. zavolá se OS  
  3. otevře se shell  
  4. OS musí najít příkaz PAUSE
  5. musí se alokovat paměť pro provedení 
  6. musí se spustit příkaz a čekání na stisk 
  7. navrátit paměť (dealokace) 
  8. ukončení práce s OS 
  9. obnovení programu

Jednoduchá funkce: 

void pause(void) 
{
  printf("\n Stisk klávesy pro ukončení...");
  fflush(stdout);
  while('\n' != getchar());
}
Nahlásit jako SPAM
IP: 95.82.185.–
Software: C; C++; C#; Pascal; Delphi; Java Webdesign: PHP; MySQL; CSS; jQuery; Ajax; Javascript; OOP
ondra.holub+1
Stálý člen
25. 12. 2012   #6
-
0
-

#1 Idospekr
system("PAUSE") má i další nevýhody - např. nefunguje v Unixech. Podobně jako conio. A jak už psal KIIV, co ten program pak bude dělat, až jeho výstup nebo vstup budu chtít někam přesměrovat?

Osobně mám pro tento účel (pozastavení programu po jeho skončení) v Code::Blocks checkbox, kterým nastavím, že po spuštění z IDE se to celé zapauzuje. Vzhledem k četnosti tohoto dotazu bych se chtěl zeptat lidí pracujících s Visual studiem: Copak něco tak triviálního v tom studiu není? Tomu se mi nechce věřit (i když chápu, že negrafický program není v dnešní době zrovna "in"). Já prostředí visual studia nepoužívám, takže to neznám.

Nahlásit jako SPAM
IP: 212.96.189.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 132 hostů

Podobná vlákna

Konec běhu programu — založil Polarski

Konec INVEXu — založil Nefaritus

Po 2 vete konec — založil Anonym

Konec pole — založil Janek

Konec vstupu — založil xeres

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý