Windows Azure Cloud Storage ermöglicht es Ihnen bereits ab 0,10€ pro GB/Monat die Vorteile der Cloud zu nutzen.
Hypercell ein ] Hypercell aus ] Zeige Navigation ] Verstecke Navigation ]
c++.de  
   
Advanced Developers Conference     
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 :: C++ (auch C++0x und C++11) ::  Hilfe bei Bankautomaten Projekt  
Gehen Sie zu Seite Zurück  1, 2
  Zeige alle Beiträge auf einer Seite
Auf Beitrag antworten
Autor Nachricht
_matze
Mitglied

Benutzerprofil
Anmeldungsdatum: 31.07.2007
Beiträge: 9275
Beitrag _matze Mitglied 15:35:53 21.10.2009   Titel:              Zitieren

wabbul schrieb:

C/C++ Code:
if (Kntnr == '0000')
{
file.open(0000.txt)
}
C/C++ Code:
if (Kntnr == '0000')
{
file.open(0000.txt)
}
C/C++ Code:
if (Kntnr == '0000')
{
file.open(0000.txt)
}


Anführungszeichen könnten ihren Beitrag zur erfolgreichen Übersetzung leisten. Muss aber nicht, wenn du nicht willst... ;)

Die einfach Anführungszeichen oben sind auch falsch. Ein Zeichenliteral ist nur ein Zeichen breit, alles darüber hinaus ist ein String und bedarf der doppelten Anführungszeichen...

_________________
Wie viele atheistische Babys hat man schon aus Versehen - oder gar mit Absicht! - getauft?


Zuletzt bearbeitet von _matze am 15:57:09 21.10.2009, insgesamt 1-mal bearbeitet
Th69
Mitglied

Benutzerprofil
Anmeldungsdatum: 25.03.2008
Beiträge: 2112
Beitrag Th69 Mitglied 15:45:56 21.10.2009   Titel:              Zitieren

Florian G., überleg dir nochmal, was eine while-Schleife macht (eine if-Anweisung wäre in deinem Fall wohl sinnvoller).
wabbul
Unregistrierter




Beitrag wabbul Unregistrierter 16:16:43 21.10.2009   Titel:              Zitieren

_matze schrieb:


Anführungszeichen könnten ihren Beitrag zur erfolgreichen Übersetzung leisten. Muss aber nicht, wenn du nicht willst... ;) [...]


Asche auf mein Haupt. Danke für die Berichtigung.

Übrigens, um mal eine eigene Frage einzubringen wenn es erlaubt ist:

C/C++ Code:
 // Lese nun aus der Datei. Es wird getline verwendet um komfortabel eine ganze Zeile zu lesen. Zuerst muss aber der Dateipointer wieder auf den Anfang gesetzt werden:
  file.seekg(0);
C/C++ Code:
// Lese nun aus der Datei. Es wird getline verwendet um komfortabel eine ganze Zeile zu lesen. Zuerst muss aber der Dateipointer wieder auf den Anfang gesetzt werden:
file.seekg(0);
C/C++ Code:
 // Lese nun aus der Datei. Es wird getline verwendet um komfortabel eine ganze Zeile zu lesen. Zuerst muss aber der Dateipointer wieder auf den Anfang gesetzt werden:
  file.seekg(0);


Was genau tut bitte die Funktion seekg(0)?

Ist diese dafür zuständig dass immer nur eine Zeile gelesen wird und nicht der gesamte Inhalt?
wabbul
Unregistrierter




Beitrag wabbul Unregistrierter 16:28:19 21.10.2009   Titel:              Zitieren

Man entschuldige den doppel-Beitrag, ich werde mich gleich registrieren.

Gearde ahbe ich die Funktion seekg() getestet, die allem Anschein den Cursor auf die Stelle im Paramter verschiebt.

Welche Funktion ist also für einen Zeilensprung geeignet?
Florian G.
Mitglied

Benutzerprofil
Anmeldungsdatum: 21.10.2009
Beiträge: 7
Beitrag Florian G. Mitglied 07:14:36 22.10.2009   Titel:              Zitieren

Hallo, ich habe jezz mal deine Lösung probiert, und mit einem einfachen
Code:
cout<<buffer;
Code:
cout<<buffer;
Code:
cout<<buffer;


versehen, jedoch kommen 6 Fehlermeldungen, ich glaube das mir includes fehlen oder sonstiges, kann mal jmd bitte drübersehen, hier ein screenshot.

http://img11.imageshack.us/img11/5254/unbenannthv.jpg
Mizar
Mitglied

Benutzerprofil
Anmeldungsdatum: 18.10.2008
Beiträge: 215
Beitrag Mizar Mitglied 07:26:03 22.10.2009   Titel:              Zitieren

Es sollte noch folgendes eingebunden werden:
C/C++ Code:
#include <fstream>  // für std::ifstream
#include
<string>   // für std::string und std::getline
C/C++ Code:
#include <fstream> // für std::ifstream
#include
<string> // für std::string und std::getline
C/C++ Code:
#include <fstream>  // für std::ifstream
#include
<string>   // für std::string und std::getline

Und noch eine kleine Anmerkung: Entweder verwendest du
C/C++ Code:
using namespace std;
C/C++ Code:
using namespace std;
C/C++ Code:
using namespace std;

und entfernst dann die ganzen std:: oder aber (was ich persönlich besser finde) du schmeißt das
C/C++ Code:
using namespace std;
C/C++ Code:
using namespace std;
C/C++ Code:
using namespace std;

weg und verwendest dann konsequent std::. Also, zum Beispiel auch hier:
C/C++ Code:
cout<<buffer; // <-- vor cout dann das std:: schreiben
C/C++ Code:
cout<<buffer; // <-- vor cout dann das std:: schreiben
C/C++ Code:
cout<<buffer; // <-- vor cout dann das std:: schreiben

Es liegt ganz an dir :)

_________________
"Pardon me for not knowing they had a... sonic weapon fence."
Florian G.
Mitglied

Benutzerprofil
Anmeldungsdatum: 21.10.2009
Beiträge: 7
Beitrag Florian G. Mitglied 12:55:15 22.10.2009   Titel:              Zitieren

So Danke,

Ich habe deine Erklärungen befolgt.

Jedoch scheint es nicht ganz zu funktionieren, dort wo die .exe gespeichert wird habe ich eine 0000.txt erstellt.

Dort steht in der ersten Zeile TEST.

Jedoch wird dies nicht ausgegeben es erscheint nur ein leeres Dos Fenster.

Was mache ich den Falsch?

Danke für die schnellen Hilfen bis jetzt haben wir sehr geholfen!

Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <iostream>
#include <iomanip>
#include <fstream>  // für std::ifstream
#include <string>   // für std::string und std::getline

using namespace std;

int main()

{



string buffer;
ifstream myFile;
myFile.open("00000.txt");//, std::ios::in); // Textdatei öffnen

while (getline(myFile, buffer)) { // die aktuelle Zeile in den String "buffer" einlesen und den Zeiger auf die nächste Zeile setzen

    cout<<buffer;
  // hier kannst du deine Operationen mit der aktuellen Zeile (in "buffer") durchführen, z.B. einen Wert auslesen (mit Stringoperationen) und in einer Variable speichern
}
myFile.close(); // und danach Datei schließen



fflush(stdin);
getchar();
return 0;

}
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <iostream>
#include <iomanip>
#include <fstream> // für std::ifstream
#include <string> // für std::string und std::getline

using namespace std;

int main()

{



string buffer;
ifstream myFile;
myFile.open("00000.txt");//, std::ios::in); // Textdatei öffnen

while (getline(myFile, buffer)) { // die aktuelle Zeile in den String "buffer" einlesen und den Zeiger auf die nächste Zeile setzen

cout<<buffer;
// hier kannst du deine Operationen mit der aktuellen Zeile (in "buffer") durchführen, z.B. einen Wert auslesen (mit Stringoperationen) und in einer Variable speichern
}
myFile.close(); // und danach Datei schließen



fflush(stdin);
getchar();
return 0;

}
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <iostream>
#include <iomanip>
#include <fstream>  // für std::ifstream
#include <string>   // für std::string und std::getline

using namespace std;

int main()

{



string buffer;
ifstream myFile;
myFile.open("00000.txt");//, std::ios::in); // Textdatei öffnen

while (getline(myFile, buffer)) { // die aktuelle Zeile in den String "buffer" einlesen und den Zeiger auf die nächste Zeile setzen

    cout<<buffer;
  // hier kannst du deine Operationen mit der aktuellen Zeile (in "buffer") durchführen, z.B. einen Wert auslesen (mit Stringoperationen) und in einer Variable speichern
}
myFile.close(); // und danach Datei schließen



fflush(stdin);
getchar();
return 0;

}


Zuletzt bearbeitet von Florian G. am 12:56:28 22.10.2009, insgesamt 1-mal bearbeitet
_matze
Mitglied

Benutzerprofil
Anmeldungsdatum: 31.07.2007
Beiträge: 9275
Beitrag _matze Mitglied 13:00:52 22.10.2009   Titel:              Zitieren

Florian G. schrieb:
dort wo die .exe gespeichert wird habe ich eine 0000.txt erstellt.


Florian G. schrieb:

Code:
myFile.open("00000.txt");
Code:
myFile.open("00000.txt");
Code:
myFile.open("00000.txt");


Fällt dir was auf? ;)

Wenn du nicht weißt, was bei einem Programm schief läuft, dann nutze den Debugger! Setze dir Breakpoints, gehe schrittweise durch das Programm, überprüfe Variableninhalte. Außerdem solltest du bei vielen Funktionen immer die Rückgabe checken. Du weißt z.B. gar nicht, ob die Datei wirklich geöffnet werden konnte.

_________________
Wie viele atheistische Babys hat man schon aus Versehen - oder gar mit Absicht! - getauft?
Florian G.
Mitglied

Benutzerprofil
Anmeldungsdatum: 21.10.2009
Beiträge: 7
Beitrag Florian G. Mitglied 13:49:38 22.10.2009   Titel:              Zitieren

JA mir fällt auf das ich ein kleines Dumemrchen bin =)))
Vielen dank für die Hilfe den Rest werde ich hinbekommen.

TY =) :live: :live: :live: :live: :D
_matze
Mitglied

Benutzerprofil
Anmeldungsdatum: 31.07.2007
Beiträge: 9275
Beitrag _matze Mitglied 13:52:00 22.10.2009   Titel:              Zitieren

Zur Sicherheit nochmal eine kurze Anmerkung (falls nicht sowieso schon klar): bei ifstream::open immer checken, ob die Datei wirklich geöffnet werden konnte (ansonsten halt ne Fehlermeldung oder so).

_________________
Wie viele atheistische Babys hat man schon aus Versehen - oder gar mit Absicht! - getauft?
C/C++ Forum :: C++ (auch C++0x und C++11) ::  Hilfe bei Bankautomaten Projekt  
Gehen Sie zu Seite Zurück  1, 2
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.