| Autor |
Nachricht |
Dekunuss
Mitglied
Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 9
|
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
|
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
|
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
|
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
|
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
|
Dekunuss Mitglied
21:30:20 08.02.2010 Titel: |
|
Zitieren |
Puh.. das mit dem zweiten Weg sagst du so einfach 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
|
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 |
|
|
|
|
 |
Dekunuss
Mitglied
Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 9
|
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
|
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
|
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
|
C++ Forumbot Forumbot
23:42:18 08.02.2010 Titel: |
|
Zitieren |
|
 |
Dekunuss
Mitglied
Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 9
|
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
|
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
|
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
|
Doug_HH Mitglied
01:02:56 09.02.2010 Titel: |
|
Zitieren |
|
 |
Icematix
Mitglied
Benutzerprofil
Anmeldungsdatum: 16.03.2009
Beiträge: 530
|
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
|
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
|
Dekunuss Mitglied
02:02:47 09.02.2010 Titel: |
|
Zitieren |
|
 |
Doug_HH
Mitglied
Benutzerprofil
Anmeldungsdatum: 30.09.2007
Beiträge: 493
|
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
|
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
|
Doug_HH Mitglied
12:25:24 10.02.2010 Titel: |
|
Zitieren |
|
 |
Dekunuss
Mitglied
Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 9
|
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
|
Thek Unregistrierter
18:55:45 12.02.2010 Titel: |
|
Zitieren |
Hi,
mach mal einfach am Ende die Funktion
system("pause");
ganz am ende. |
|
|
|
 |