Zahl aus einer Datei zwei Mal einlesen



  • Jetzt sollten einige Dateien erstellt werden, darunter auch eine, die bereits den Einstiegspunkt WinMain(...) enthält.
    Deinen kompletten Code kannst du nun in diese Funktion packen. cout und Konsorten funktionieren jetzt natürlich nicht mehr, für Ausgaben musst du bspw. MessageBox(0,"hier dein Text",0,0) bemühen.

    Ich habe leider ein deutschen Visual C++, wenn ich aber ein Win32-Projekt erstelle, und im Folgendem Diaglog auf Fertigstellen gehe, erhalte ich einige Datei aber das einzige was ich zu winmain() finde sieht so aus:

    int APIENTRY _tWinMain(HINSTANCE hInstance,
                         HINSTANCE hPrevInstance,
                         LPTSTR    lpCmdLine,
                         int       nCmdShow)
    

    Ich glaube mir das alles zu erklären kostet dich zu viel Nerven, von daher belasse ich es lieber dabei. Die aufblinkende Konsole ist zwar nicht schön aber ich denke man kann damit leben.



  • Das passt schon alles 😉
    Ich habe WinMain(...) geschrieben, die Punkte sollten bedeuten, dass hier noch ein paar Parameter stehen.
    Du hast ein _tWinMain, dies bedeutet, dass du sowohl für UNICODE als auch für MBCS kompilieren kannst (ganz grob: in UNICODE sind Zeichen [TCHAR aus tchar.h] wie 'a', 'b' etc. 2Byte groß, in MBCS ist ein TCHAR 1 Byte groß).
    Du solltest aber für dein Projekt MBCS einstellen (Projekteigenschaften-General). UNICODE würde nur weitere Probleme mit sich bringen.
    Was in der Konsolenanwendung main() ist, heißt in der Windowsanwendung WinMain oder _tWinMain. Alles, was bei deiner Konsolenanwendung jetzt unter main() steht, kannst du kopieren und unter _tWinMain einfügen. Die couts kannst du natürlich löschen und durch MessageBox-Aufrufe ersetzen (siehe msdn http://msdn.microsoft.com/en-us/library/ms645505%28VS.85%29.aspx).



  • Vicious Falcon schrieb:

    Die couts kannst du natürlich löschen und durch MessageBox-Aufrufe ersetzen

    Habe keine cout's, beim Ausführen soll ja gar nichts mitgeteilt werden.
    Ich hab das mal eingefügt, bekomme so ca 90 error 🙂
    meist "nicht deklarierter bezeichner"



  • <windows.h> inkludierst du, oder? Normalerweise geschieht dies in stdafx.h (Erstellung von precompiled headern). Welche Bezeichner sind denn unbekannt? Poste mal die _ersten_ Fehler, die weiteren sind meist nur Folgefehler.



  • 1>c:\users\lprelle\documents\visual studio 2010\projects\32\32\32.cpp(32): error C2065: 'string': nichtdeklarierter Bezeichner
    1>c:\users\lprelle\documents\visual studio 2010\projects\32\32\32.cpp(32): error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'string3'
    1>c:\users\lprelle\documents\visual studio 2010\projects\32\32\32.cpp(32): error C2065: 'string3': nichtdeklarierter Bezeichner
    1>c:\users\lprelle\documents\visual studio 2010\projects\32\32\32.cpp(36): error C3861: "time": Bezeichner wurde nicht gefunden.
    1>c:\users\lprelle\documents\visual studio 2010\projects\32\32\32.cpp(37): error C3861: "localtime": Bezeichner wurde nicht gefunden.

    windows.h ist inkludiert, in der stdafx.h war sie sogar schon drin, ich hatte die noch in meiner "main" inkludiert. hab sie nun wieder rausgenommen.



  • #include <string> //cstring reicht nicht
    #include <ctime> //NICHT time.h
    

    und

    using namespace std;
    

    (was an und für sich zwar nicht toll ist, aber in source-dateien nicht weiter verwerflich ist)
    hast du aber?

    bb



  • Guten Morgen,

    Viele viele Errors sind verschwunden. Übrig geblieben sind Probleme mit den ifstreams und ofstream:

    error C2065: 'zeit': nichtdeklarierter Bezeichner
    error C2228: Links von ".close" muss sich eine Klasse/Struktur/Union befinden.
    Typ ist ''unknown-type''
    error C2065: 'datum': nichtdeklarierter Bezeichner
    error C2228: Links von ".close" muss sich eine Klasse/Struktur/Union befinden.
    Typ ist ''unknown-type''

    Liebe Grüße



  • lies doch mal die doku:
    http://www.cplusplus.com/reference/iostream/ifstream/ifstream/

    ->
    #include <fstream>

    bb



  • Jetzt gibt es keine Fehler mehr beim Kompilieren und Ausführen.
    Danke!

    Wollte das Programm auch gleich mal testen auf dem Xp-Recher, ging aber nicht. Ich bin aber anscheinend nicht der Erste mit dem Problem, musste das Programm noch ein Mal mit Visual C++ 2008 kompilieren, dann gings.

    Vielen Dank für eure Hilfe und eure Geduld!

    Liebe Grüße,
    Martin

    P.S: Gehört es sich solch einen Programmcode auch zu kosten wenn er funktioniert?



  • Wie, zu kosten? Zu essen, sich was kosten zu lassen oder dafür Geld zu verlangen? Ich denke, für so etwas Simples erhält man kein Geld, zumindest nicht in diesem Bereich (Kindersicherung) 😉



  • Ich denke, er meint posten.
    Und nein, du brauchst deinen Code nicht zu posten. Es ist aber schön, dass du es geschafft hast.


Anmelden zum Antworten