Hypercell ein ] Hypercell aus ] Zeige Navigation ] Verstecke Navigation ]
c++.de  
   
Forentreff 2012     
Bücher-Shop mit Amazon (Buchkategorien)C++ : Referenzen zu C++ : C++ Builder : Visual C++ : C# : Java : Spieleprogrammierung : Systemprogrammierung Linux : Software-Entwicklung : .NET : Compilertechnik : Algorithmen & Datenstrukturen : Objektorientierung : Entwurfsmuster : UML : eXtreme Programming : Scrum : Projektmanagement : Software-Testing : Datenbanken : Tom DeMarco : Dilbert : User Friendly
C/C++ Forum :: DOS und Win32-Konsole ::  Automatisches Schließen der Box unter Windows7 verhindern     Zeige alle Beiträge auf einer Seite Auf Beitrag antworten
Autor Nachricht
Dekunuss
Mitglied

Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 9
Beitrag Dekunuss Mitglied 19:55:14 08.02.2010   Titel:   Automatisches Schließen der Box unter Windows7 verhindern            Zitieren

Hey all.
Ich bin ganz neu in Sachen "C++" und anderen Programmiersprachen und erhoffe mir daher hier die nötig Hilfe zu finden :)

Mein Problem ist folgendes: ich hänge an einer der ersten Übungen von Shade Of Mine (http://tutorial.schornboeck.net/eingabe.htm). Habe genau den Code genommen, den er genommen hat:
Zitat:
#include<iostream>
using namespace std;

int main()
{
int zahl1;
int zahl2;
int zahl3;

cout<<"Bitte eine Zahl eingeben\n";
cin>>zahl1;
cout<<"Bitte noch eine Zahl eingeben\n";
cin>>zahl2;
cout<<"Bitte eine letzte Zahl eingeben\n";
cin>>zahl3;
cout<<"Die Ausgabe lautet\n";
cout<<zahl1<<" "<<zahl3<<" "<<zahl2<<"\n";
}


Aaaaber meine Dosbox schließt sich automatisch, bevor dort die drei Zahlen angezeigt werden können, wenn ich auf ENTER drücke. Ich habe mir - brav wie ich bin ;) - auch schon folgenden Thread im Forum angeschaut, da dort genau mein Problem beschrieben wirdhttp://c-plusplus.de/forum/viewtopic-var-t-is-111042.html und habe alle Möglichkeiten ausprobiert, aber leider klappts immer noch nicht. Liegts vielleicht daran, dass ich Windows 7 (64 bit) besitze?


Bitte um Hilfe.


Zuletzt bearbeitet von Dekunuss am 19:55:37 08.02.2010, insgesamt 1-mal bearbeitet
drakon
Mitglied

Benutzerprofil
Anmeldungsdatum: 28.01.2008
Beiträge: 6824
Beitrag drakon Mitglied 19:57:16 08.02.2010   Titel:              Zitieren

Ich weiss nicht, obs an 7 liegt, aber wenn du Visual Studio hast, kannst du auch Ctrl+F5 benutzen, dann wartet die Konsole noch automatisch auf eine Eingabe.

_________________
Blog: www.drakon.ch
Athar
Mitglied

Benutzerprofil
Anmeldungsdatum: 24.12.2009
Beiträge: 838
Beitrag Athar Mitglied 20:07:29 08.02.2010   Titel:              Zitieren

Was passiert denn, wenn du es direkt von der Konsole aus startest?
Dekunuss
Mitglied

Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 9
Beitrag Dekunuss Mitglied 20:19:25 08.02.2010   Titel:              Zitieren

Ähm, ich besitze Visual Basic 2008, aber damit komme ich noch nicht gut zurecht. Habe mir deshalb einen anderen kostenlosen Compiler namens "Dev-C++ 4.9.9.2" runtergeladen.

Wie gesagt, was passiert ist folgendes: es werden mir alle Schritte angezeigt bis auf den Letzten. Dieser sollte mir dann beim Drücken der Enter-Taste eigentlich meine drei Zahlen anzeigen. Das tut er auch, aber leider is das ganze nur für einen Bruchteil einer Sekunde zu sehen, weil sich danach sofort die Dosbox selbstständig schließt.
irgendwer
Unregistrierter




Beitrag irgendwer Unregistrierter 20:38:22 08.02.2010   Titel:              Zitieren

den Grund für das Schließen hast du ja schon gefunden.
Und jetzt hast du zwei Möglichkeiten:
1. diese waitfunktion einbauen
2. start->ausführen->cmd
ins Verzeichnis deiner exe wechslen (Befehl: cd Pfad) und manuel starten

ich finde den zweiten weg schöner, weil ich es hasse wenn programme unnötig warten

und ich könnte fast wetten dass gleich einer kommt und dir erzählt das Dev-cpp veraltet ist und du was anderes nehmen sollst
Dekunuss
Mitglied

Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 9
Beitrag Dekunuss Mitglied 21:30:20 08.02.2010   Titel:              Zitieren

Puh.. das mit dem zweiten Weg sagst du so einfach :D Wie wechsel ich denn über die Dosbox in das Verzeichnis meiner exe (welche exe überhaupt)?
wx++
Mitglied

Benutzerprofil
Anmeldungsdatum: 14.07.2009
Beiträge: 164
Beitrag wx++ Mitglied 21:52:35 08.02.2010   Titel:              Zitieren

Zitat:
(welche exe überhaupt)?

Die .exe-Datei die dein Compiler erzeugt hat (in dem Verzeichnis oder einem Unterverzeichnis, in dem auch die .cpp-Quelldateien liegen)
Zitat:
Wie wechsel ich denn über die Dosbox in das Verzeichnis

Zitat:
Befehl: cd Pfad
Dekunuss
Mitglied

Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 9
Beitrag Dekunuss Mitglied 22:06:27 08.02.2010   Titel:              Zitieren

Alles klar, jetzt hab ichs begriffen. Hab die Anwendung jetzt mal manuell über die Dosbox ausgeführt und da ging alles perfekt. Aber trotzdem muss es doch möglich sein, irgend einen Code im Compiler anzuhängen, damit ich auch einfach so die .exe ausführen kann und dann alles glatt läuft, oder?
Doug_HH
Mitglied

Benutzerprofil
Anmeldungsdatum: 30.09.2007
Beiträge: 493
Beitrag Doug_HH Mitglied 23:32:52 08.02.2010   Titel:              Zitieren

So sollte es funzen, habe aber nur Vista.
Auch mit Dev-C++ 4.9.9.2 erstellt.
C/C++ Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <cstdlib>
#include
<iostream>

using namespace std;

int main(int argc, char *argv[])
{
    int zahl1;
    int zahl2;
    int zahl3;
   
    cout<<"Bitte eine Zahl eingeben: ";
    cin>>zahl1;
    cout<<"Bitte noch eine Zahl eingeben: ";
    cin>>zahl2;
    cout<<"Bitte eine letzte Zahl eingeben: ";
    cin>>zahl3;
    cout<<"Die Ausgabe lautet\n";
    cout<<zahl1<<" "<<zahl3<<" "<<zahl2<<"\n";
    system("PAUSE");
    return EXIT_SUCCESS;
}
C/C++ Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <cstdlib>
#include
<iostream>

using namespace std;

int main(int argc, char *argv[])
{
int zahl1;
int zahl2;
int zahl3;

cout<<"Bitte eine Zahl eingeben: ";
cin>>zahl1;
cout<<"Bitte noch eine Zahl eingeben: ";
cin>>zahl2;
cout<<"Bitte eine letzte Zahl eingeben: ";
cin>>zahl3;
cout<<"Die Ausgabe lautet\n";
cout<<zahl1<<" "<<zahl3<<" "<<zahl2<<"\n";
system("PAUSE");
return EXIT_SUCCESS;
}
C/C++ Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <cstdlib>
#include
<iostream>

using namespace std;

int main(int argc, char *argv[])
{
    int zahl1;
    int zahl2;
    int zahl3;
   
    cout<<"Bitte eine Zahl eingeben: ";
    cin>>zahl1;
    cout<<"Bitte noch eine Zahl eingeben: ";
    cin>>zahl2;
    cout<<"Bitte eine letzte Zahl eingeben: ";
    cin>>zahl3;
    cout<<"Die Ausgabe lautet\n";
    cout<<zahl1<<" "<<zahl3<<" "<<zahl2<<"\n";
    system("PAUSE");
    return EXIT_SUCCESS;
}


Gruß,

Doug_HH

_________________
The next time you think you are perfect, try walking on water.
www.rb-softarticle.com
Icematix
Mitglied

Benutzerprofil
Anmeldungsdatum: 16.03.2009
Beiträge: 530
Beitrag Icematix Mitglied 23:36:41 08.02.2010   Titel:              Zitieren

Zitat:
Ähm, ich besitze Visual Basic 2008, aber damit komme ich noch nicht gut zurecht.


Visual C++ hat nichts mit Visual Basic zu tun.


Zitat:
Habe mir deshalb einen anderen kostenlosen Compiler namens "Dev-C++ 4.9.9.2" runtergeladen.


DevC++ ist ein großer Scheiß, veraltet und seit 5 Jahren nicht mehr geupdatet.

_________________
“Saying that Java is nice because it works on all OSes is like saying that anal sex is nice because it works on all genders.”
“If Java had true garbage collection, most programs would delete themselves upon execution.”
C++ Forumbot
Forumbot

Benutzerprofil
Anmeldungsdatum: 29.02.2004
Beiträge: 16158
Beitrag C++ Forumbot Forumbot 23:42:18 08.02.2010   Titel:              Zitieren

Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum DOS und Win32-Konsole verschoben.

Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?


Dieses Posting wurde automatisch erzeugt.

_________________
Besuchen Sie unsere Bücherecke.
http://www.c-plusplus.de/bucher.php
Mit jeder Bestellung unterstützen Sie das Forum.
Dekunuss
Mitglied

Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 9
Beitrag Dekunuss Mitglied 00:05:45 09.02.2010   Titel:              Zitieren

Doug_HH schrieb:
So sollte es funzen, habe aber nur Vista.
Auch mit Dev-C++ 4.9.9.2 erstellt.

Ich bekomm leider ne Fehlermeldung -> http://img51.imageshack.us/img51/1545/fehlermeldungn.png
Klappt nich :/ Wo das Problem liegt weiß ich leider nich..

Zitat:

Visual C++ hat nichts mit Visual Basic zu tun.

Ok, die Installation von Visual C++ 2008 läuft. Hatte irgendwo etwas über einen Compiler in Visual Basic 2008 gelesen und dachte, das wäre das richtige Programm.
Doug_HH
Mitglied

Benutzerprofil
Anmeldungsdatum: 30.09.2007
Beiträge: 493
Beitrag Doug_HH Mitglied 00:10:00 09.02.2010   Titel:              Zitieren

Die letzte schließende Klammer ist zu viel }.

_________________
The next time you think you are perfect, try walking on water.
www.rb-softarticle.com
Dekunuss
Mitglied

Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 9
Beitrag Dekunuss Mitglied 00:23:55 09.02.2010   Titel:              Zitieren

Doug_HH schrieb:
Die letzte schließende Klammer ist zu viel }.

Ah, stimmt. Aber klappt leider trotzdem nicht.. die Dosbox schließt sich erneut viel zu früh. Lässt sich mein Problem überhaupt lösen oder geht das evtl mit Windows 7 gar nicht?
Doug_HH
Mitglied

Benutzerprofil
Anmeldungsdatum: 30.09.2007
Beiträge: 493
Beitrag Doug_HH Mitglied 01:02:56 09.02.2010   Titel:              Zitieren

Saug Dir doch mal Visual Studio C++ 2008 Express...

http://www.microsoft.com/germany/Express/download/downloaddetails.aspx?p=vcpp

Und dann gib mal Gummi.... :D

_________________
The next time you think you are perfect, try walking on water.
www.rb-softarticle.com
Icematix
Mitglied

Benutzerprofil
Anmeldungsdatum: 16.03.2009
Beiträge: 530
Beitrag Icematix Mitglied 01:38:20 09.02.2010   Titel:              Zitieren

Dekunuss schrieb:
Doug_HH schrieb:
Die letzte schließende Klammer ist zu viel }.

Ah, stimmt. Aber klappt leider trotzdem nicht.. die Dosbox schließt sich erneut viel zu früh. Lässt sich mein Problem überhaupt lösen oder geht das evtl mit Windows 7 gar nicht?


Starte das Programm über die Konsole.

_________________
“Saying that Java is nice because it works on all OSes is like saying that anal sex is nice because it works on all genders.”
“If Java had true garbage collection, most programs would delete themselves upon execution.”
Doug_HH
Mitglied

Benutzerprofil
Anmeldungsdatum: 30.09.2007
Beiträge: 493
Beitrag Doug_HH Mitglied 01:40:45 09.02.2010   Titel:              Zitieren

Icematix schrieb:

Starte das Programm über die Konsole.


Das schockt doch nicht, da hätte ich auch kein Bock drauf...

_________________
The next time you think you are perfect, try walking on water.
www.rb-softarticle.com
Dekunuss
Mitglied

Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 9
Beitrag Dekunuss Mitglied 02:02:47 09.02.2010   Titel:              Zitieren

Doug_HH schrieb:
Saug Dir doch mal Visual Studio C++ 2008 Express...

http://www.microsoft.com/germany/Express/download/downloaddetails.aspx?p=vcpp

Und dann gib mal Gummi.... :D

So, habs jetzt :rolleyes: Aber leider steh ich nun vor nem neuen Problem. Hab den Code eingefügt und will das Ganze debuggen, aber:

1. Fehlermeldung, ich klicke auf "ja":http://img203.imageshack.us/i/meldung1.png/
2. Fehlermeldung, wieder klicke ich auf "ja": http://img229.imageshack.us/i/meldung2.png/
3. Fehlermeldung: http://img191.imageshack.us/i/meldung3.png/
Was hab ich jetzt schon wieder falsch gemacht? :(

Zitat:

Starte das Programm über die Konsole.

Das habe ich schon versucht und auf diesem Wege klappt es auch, aber es muss doch auch irgendwie ohne die Konsole gehen.
Doug_HH
Mitglied

Benutzerprofil
Anmeldungsdatum: 30.09.2007
Beiträge: 493
Beitrag Doug_HH Mitglied 12:51:31 09.02.2010   Titel:              Zitieren

1. Nein anklicken und Häckchen bei "Dieses Dialogfeld nicht mehr anzeigen" setzen.
2. Gibt es dann nicht mehr.
3. Zeig mal Code, da stimmt was mit dem Pfad nicht.

_________________
The next time you think you are perfect, try walking on water.
www.rb-softarticle.com
Dekunuss
Mitglied

Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 9
Beitrag Dekunuss Mitglied 14:35:26 09.02.2010   Titel:              Zitieren

Dekunuss schrieb:
Doug_HH schrieb:
1. Nein anklicken und Häckchen bei "Dieses Dialogfeld nicht mehr anzeigen" setzen.

Bei "nein" erscheint ebenfalls die Fehlermeldung 3.

[EDIT]:
Ich habe jetzt mal ein wenig nachgeforscht. Wie schon erwähnt erscheint bei mir stetig Fehlermeldung 3. Mir ist nun aufgefallen, dass mein Dateipfad stark von dem in der Fehlermeldung abweicht, da meiner auf Deutsch ist, der in der Meldung aber auf Englisch. Außerdem befindet sich in meinem Pfad auch keine .exe, von der in der Fehlermeldung dauernd die Rede ist. Habe versucht mein Projekt als .exe in dem besagten Pfad abzuspeichern, aber wie ich das genau machen soll, blick ich immer noch nich (ich kann mein Projekt nur als Textdatei speichern).

Wie änder ich denn meinen Pfad oder speicher mein Projekt korrekt ab? Oder hat das alles möglicherweise gar nichts mit meinem Problem zu tun?

PS: neben dem Debug-Button in Visual C++ kann ich verschiedene Optionen fürs Debuggen auswählen. Im ersten Fenster kann ich zwischen "Debug", "Release" und "Konfigurations-Manager" wählen. Im zweiten Fenster dann zwischen "Win32" und dem Konfigurationsmanager. Ich besitze allerdings nur die 64bit Version. Vielleicht ist das ein weiteres Kriterium..


Und hier is der Code:
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    int zahl1;
    int zahl2;
    int zahl3;
   
    cout<<"Bitte eine Zahl eingeben: ";
    cin>>zahl1;
    cout<<"Bitte noch eine Zahl eingeben: ";
    cin>>zahl2;
    cout<<"Bitte eine letzte Zahl eingeben: ";
    cin>>zahl3;
    cout<<"Die Ausgabe lautet\n";
    cout<<zahl1<<" "<<zahl3<<" "<<zahl2<<"\n";
    system("PAUSE");
    return EXIT_SUCCESS;
}
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
int zahl1;
int zahl2;
int zahl3;

cout<<"Bitte eine Zahl eingeben: ";
cin>>zahl1;
cout<<"Bitte noch eine Zahl eingeben: ";
cin>>zahl2;
cout<<"Bitte eine letzte Zahl eingeben: ";
cin>>zahl3;
cout<<"Die Ausgabe lautet\n";
cout<<zahl1<<" "<<zahl3<<" "<<zahl2<<"\n";
system("PAUSE");
return EXIT_SUCCESS;
}
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    int zahl1;
    int zahl2;
    int zahl3;
   
    cout<<"Bitte eine Zahl eingeben: ";
    cin>>zahl1;
    cout<<"Bitte noch eine Zahl eingeben: ";
    cin>>zahl2;
    cout<<"Bitte eine letzte Zahl eingeben: ";
    cin>>zahl3;
    cout<<"Die Ausgabe lautet\n";
    cout<<zahl1<<" "<<zahl3<<" "<<zahl2<<"\n";
    system("PAUSE");
    return EXIT_SUCCESS;
}


Zuletzt bearbeitet von Dekunuss am 21:51:51 09.02.2010, insgesamt 1-mal bearbeitet
Doug_HH
Mitglied

Benutzerprofil
Anmeldungsdatum: 30.09.2007
Beiträge: 493
Beitrag Doug_HH Mitglied 12:25:24 10.02.2010   Titel:              Zitieren

Den Pfad für das Projekt stellst Du beim erstellen ein...
Guckst Du hier...

http://img41.imageshack.us/i/vsmfc.jpg/

ich kann den Fehler nicht nachvollziehen

Gruß,

Doug_HH

_________________
The next time you think you are perfect, try walking on water.
www.rb-softarticle.com
Dekunuss
Mitglied

Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 9
Beitrag Dekunuss Mitglied 17:36:52 10.02.2010   Titel:              Zitieren

So'n Sch*** :(
Weiß denn keiner Rat hier?

Naja trotzdem Danke fürs Versuchen.
Thek
Unregistrierter




Beitrag Thek Unregistrierter 18:55:45 12.02.2010   Titel:              Zitieren

Hi,

mach mal einfach am Ende die Funktion

system("pause");

ganz am ende.
C/C++ Forum :: DOS und Win32-Konsole ::  Automatisches Schließen der Box unter Windows7 verhindern   Auf Beitrag antworten

Zeige alle Beiträge auf einer Seite




Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können Beiträge in dieses Forum schreiben.
Sie können auf Beiträge in diesem Forum antworten.
Sie können Ihre Beiträge in diesem Forum nicht bearbeiten.
Sie können Ihre Beiträge in diesem Forum nicht löschen.
Sie können an Umfragen in diesem Forum nicht mitmachen.

Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme

c++.de ist Teilnehmer des Partnerprogramms von Amazon Europe S.à.r.l. und Partner des Werbeprogramms, das zur Bereitstellung eines Mediums für Websites konzipiert wurde, mittels dessen durch die Platzierung von Werbeanzeigen und Links zu amazon.de Werbekostenerstattung verdient werden kann.

Die Vervielfältigung der auf den Seiten www.c-plusplus.de, www.c-plusplus.info, www.c-sar.de, www.c-plusplus.net und www.baeckmann.de enthaltenen Informationen ohne eine schriftliche Genehmigung des Seitenbetreibers ist untersagt (vgl. §4 Urheberrechtsgesetz). Die Nutzung und Änderung der vorgestellten Strukturen und Verfahren in privaten und kommerziellen Softwareanwendungen ist ausdrücklich erlaubt, soweit keine Rechte Dritter verletzt werden. Der Seitenbetreiber übernimmt keine Gewähr für die Funktion einzelner Beiträge oder Programmfragmente, insbesondere übernimmt er keine Haftung für eventuelle aus dem Gebrauch entstehenden Folgeschäden.