1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

Beispielprogramme verschwinden gleich

  • Matt_informatic
  • 13. November 2007 um 20:13
  • Unerledigt
  • Matt_informatic
    5
    Matt_informatic
    Mitglied
    Punkte
    190
    Beiträge
    27
    • 13. November 2007 um 20:13
    • #1

    Hi,

    habe einige Beispielprogramme für C gefunden, auch in Lehrbücher.

    Was mir auffällt, das das Konsolenanwendungen sind, was zwar nicht
    schlimm ist, aber die Fenster immer gleich verschwinden.

    Das finde ich nervig.

    Warum wird da nicht gleich noch die Tastatur abgefragt, bevor das Fenster geschlossen wird. So kann man sich das Ergebnsi wenigstens nochmal anschauen.

    Woran liegt das?

    Gruß
    Matt

  • Swoncen
    22
    Swoncen
    Mitglied
    Reaktionen
    1
    Punkte
    5.331
    Beiträge
    993
    • 13. November 2007 um 20:18
    • #2

    schreib im main ganz unten einfach noch ein "getchar();"

    640K ought to be enough for anybody. :eek2:

  • a9bejo
    21
    a9bejo
    Mitglied
    Reaktionen
    42
    Punkte
    4.697
    Beiträge
    913
    • 13. November 2007 um 20:43
    • #3

    Oder führe das Programm gleich in der Konsole aus.

    lg, Benjamin Ferrari, bookworm.at

  • josef19
    9
    josef19
    Mitglied
    Reaktionen
    9
    Punkte
    749
    Beiträge
    135
    • 13. November 2007 um 20:45
    • #4

    -) mit eingabeauforderung (cmd)
    oder
    -) system("PAUSE");

    Warum einfach, wenns kompliziert geht ! USB-CD-ROM mit USB-Stick emulieren

  • Ivy
    22
    Ivy
    Mitglied
    Reaktionen
    35
    Punkte
    4.920
    Beiträge
    889
    • 13. November 2007 um 20:46
    • #5
    Zitat von josef19

    -) mit eingabeauforderung (cmd)
    oder
    -) system("PAUSE");

    mit systempause funktioniert das eigentlich ganz gut. ich muss sagen, dass dieses problem bei mir auch auftritt. es kommt auch auf den compiler an, oder? ich verwende devc++ und das ist ein sch***, was das betrifft. aber auch in der eingabeaufforderung sollte es klappen.

    Wer FU sagt, muss auch T sagen

  • Plantschkuh!
    24
    Plantschkuh!
    Mitglied
    Reaktionen
    163
    Punkte
    6.173
    Beiträge
    1.181
    • 13. November 2007 um 21:51
    • #6
    Zitat von Ivy

    ich verwende devc++ und das ist ein sch***, was das betrifft.


    Wieso ist es ein Sch***, wenn ein beendetes Programm geschlossen wird? Besser als lauter tote Fenster rumliegen haben. Der Compiler kann auch nicht riechen, ob das Programm nur schnell was machen und dann wieder verschwinden soll oder nicht.

    *plantsch*

  • MaxAuthority
    17
    MaxAuthority
    Gewinner des Desktop-Contest 2002
    Reaktionen
    5
    Punkte
    3.165
    Beiträge
    626
    • 14. November 2007 um 01:40
    • #7
    Zitat von josef19

    -) mit eingabeauforderung (cmd)
    oder
    -) system("PAUSE");

    Sehr plattform-unabhaengigen programmierstil empfiehlst du da, wenn jemand eh schon getchar() empfohlen hat, was auf jedem system geht

    http://vimperator.org - Make Firefox behave like Vim

  • Matt_informatic
    5
    Matt_informatic
    Mitglied
    Punkte
    190
    Beiträge
    27
    • 14. November 2007 um 19:48
    • #8

    Hi,

    das mit getchar(); kenne ich.

    Wollte nur wissen, warum in den ganzen Listings nicht das angegeben ist.

    Ob das vielleicht am Compiler liegt, oder was auch immer.

    Wenn ich direkt in der Konsole ausführe, dann bleibt das Fenster offen.

    Das war der Haken.

    Dank' Euch.

    Gruß
    Matt

  • a9bejo
    21
    a9bejo
    Mitglied
    Reaktionen
    42
    Punkte
    4.697
    Beiträge
    913
    • 14. November 2007 um 20:04
    • #9
    Zitat von Matt_informatic

    Hi,
    Wollte nur wissen, warum in den ganzen Listings nicht das angegeben ist.

    Weil ein Konsolenprogramm ueblicherweise aus einer Konsole heraus gestartet wird. Es macht normalerweise keinen Sinn, nach dem Ende eines Programms noch auf ein Zeichen zu warten (getchar()). Das ist nur ein Trick fuer deine konkrete Situation: Das du das Programm eben nicht aus einer Konsole heraus startest. Das geht eigentlich gar nicht (das Ding heisst ja nicht umsonst Konsolenprogramme). Und weil dein Betriebsystem das weiss, erstellt es in diesem Fall eine neue Konsole, extra fuer dein Programm.

    D.h. wenn Du den getchar() trick verwendest, dann aber nur zum testen der Programme. Wenn Du spaeter eigene Konsolenprogramme schreibst, die Du oder andere verwenden sollen, dann sollte das da nicht stehen.

    lg, Benjamin Ferrari, bookworm.at

  • MaxAuthority
    17
    MaxAuthority
    Gewinner des Desktop-Contest 2002
    Reaktionen
    5
    Punkte
    3.165
    Beiträge
    626
    • 14. November 2007 um 20:04
    • #10
    Zitat von Matt_informatic


    Wenn ich direkt in der Konsole ausführe, dann bleibt das Fenster offen.

    Das war der Haken.

    Naja, das ist kein "Haken", sondern expected behavior von terminal programmen wuerd ich sagen.
    Waer doch bloed, wenn man bei jedem xterm -e mutt, nach dem schliessen von mutt nochmals das terminal schliessen muesste.

    http://vimperator.org - Make Firefox behave like Vim

  • Matt_informatic
    5
    Matt_informatic
    Mitglied
    Punkte
    190
    Beiträge
    27
    • 15. November 2007 um 21:11
    • #11
    Zitat


    Weil ein Konsolenprogramm ueblicherweise aus einer Konsole heraus gestartet wird.


    Das habe ich dummerweise anfangs nicht verstanden. Naja, egal, jetzt verstehe ich den Sinn.

    Das mit dem "Konsolenprogramm" war mir echt nicht so klar.

    Gut, aber deswegen kann man ja auch fragen. :winking_face:

    Danke, verstehe das jetzt mit gethchar().

    Danke Euch für die Infos.

    Jetzt ist vieles für mich klarer geworden.

    Wird mir zukünftig viel helfen.

    Schönen Abend noch.

    Gruß
    Matt

  • Maximilian Rupp 27. Dezember 2024 um 12:04

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Benutzer online in diesem Thema

  • 1 Besucher

Rechtliches

Impressum

Datenschutzerklärung