vokabeltest
-
Dieser Thread wurde von Moderator/in SideWinder aus dem Forum DOS und Win32-Konsole in das Forum C++ verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
danke backfisch und keksekekse, aber ich weiß nicht wie ich die strukturen bei dir einbinden soll backfisch, und bei dir kekse kekse bekommen ich folgende fehlermeldungen:
E:\dfdfdfd\dfdfdfd.cpp(37) : error C2065: 'FILE' : nichtdeklarierter Bezeichner
E:\dfdfdfd\dfdfdfd.cpp(37) : error C2065: 'fp' : nichtdeklarierter Bezeichner
E:\dfdfdfd\dfdfdfd.cpp(37) : warning C4552: '*' : Operator hat keine Auswirkungen; Operator mit Seiteneffekt erwartet
E:\dfdfdfd\dfdfdfd.cpp(40) : error C2065: 'fopen' : nichtdeklarierter Bezeichner
E:\dfdfdfd\dfdfdfd.cpp(43) : error C2065: 'getw' : nichtdeklarierter Bezeichner
E:\dfdfdfd\dfdfdfd.cpp(44) : error C2065: 'malloc' : nichtdeklarierter Bezeichner
E:\dfdfdfd\dfdfdfd.cpp(44) : error C2440: '=' : 'int' kann nicht in 'char *' konvertiert werden
Die Konvertierung eines ganzzahligen Typs in einen Zeigertyp erfordert ein reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat
E:\dfdfdfd\dfdfdfd.cpp(45) : error C2065: 'fread' : nichtdeklarierter Bezeichner
E:\dfdfdfd\dfdfdfd.cpp(48) : error C2440: '=' : 'int' kann nicht in 'struct tVokabel *' konvertiert werden
Die Konvertierung eines ganzzahligen Typs in einen Zeigertyp erfordert ein reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat
E:\dfdfdfd\dfdfdfd.cpp(52) : error C2440: '=' : 'int' kann nicht in 'int *' konvertiert werden
Die Konvertierung eines ganzzahligen Typs in einen Zeigertyp erfordert ein reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat
E:\dfdfdfd\dfdfdfd.cpp(57) : error C2440: '=' : 'int' kann nicht in 'int *' konvertiert werden
Die Konvertierung eines ganzzahligen Typs in einen Zeigertyp erfordert ein reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat
E:\dfdfdfd\dfdfdfd.cpp(60) : error C2065: 'fclose' : nichtdeklarierter Bezeichner
E:\dfdfdfd\dfdfdfd.cpp(62) : error C2065: 'InitHashEnglishDeutsch' : nichtdeklarierter Bezeichner
Fehler beim Ausführen von cl.exe.dfdfdfd.exe - 12 Fehler, 1 Warnung(en)
-
muss ich evtl. mehrer bibliotheken einbinden? wenn ja, welche (header wären auch schön.
#include "stdafx.h"
#include "iostream.h"
#include "string.h"die hab ich benutzt
-
oder könntet ihr einen kompletten quellcode, mit headern usw. auflisten????????????
-
#include "stdafx.h" #include <iostream> #include <string>muss es wenn heißen ...
-
Ich arbeite im Moment auch an einem Vokabeltrainer, hier mein Code bisher:
#include <cstdlib> #include <iostream> #include <fstream> #include <string> #include <conio.h> #include <map> #include <ic.hpp> #include <windows.h> using namespace std; using namespace ic::shorties; char buffer; string str, str2, line; int i; map<string,string> vokabeln; void menu(); void initialize(); void vokabeltest(); void add(); void wait(); int main() { initialize(); menu(); } void initialize() { fstream datei; datei.open("datei.txt", ios::in); while(!datei.eof()) { cout<<"Initialisieren......"; getline(datei, line); i = 0; while(line[i] != '|') { str += line[i]; i++; } i++; while(i!=line.length()) { str2 += line[i]; i++; } vokabeln.insert(make_pair(str,str2)); clrscr(); gotoxy(0,0); } } void menu() { clrscr(); gotoxy(0,0); cout<<"Vokabeln hinzufuegen : 1\n"; cout<<"Vokabeltest : 2\n"; int antwort; cin>>antwort; switch(antwort) { case 1: add(); break; case 2: vokabeltest(); break; default: menu(); break; } } void add() { //kommt noch } void vokabeltest() { map<string,string>::iterator pos; pos = vokabeln.begin(); cout<<"Wie lautet die Uebersetzung von \""<<pos->first<<"\"?"<<endl; string answer; cin>>answer; if(answer==pos->second) { cout<<"Richtig!\n"; wait(); } else{ cout<<"Falsch!\n"; cout<<"Richtg waere "<<pos->second<<" gewesen."; wait(); } } void wait () { FlushConsoleInputBuffer(GetStdHandle(STD_INPUT_HANDLE)); getch(); }Meine datei.txt sieht wie folgt aus:
englisch|deutsch englisch2|deutsch2 ...Aber irgendwie sagt es mir immer, dass meine Eingabe falsch waere. kA was da falsch ist.
-
Ich hab mal das versucht:
... string answer; answer == pos->second; if(answer==pos->second) { cout<<"Richtig!\n"; wait(); } else{ cout<<"Falsch!\n"; cout<<"Richtg waere "<<pos->second<<" gewesen."; wait(); } ...Warum zur Hölle spuckt das immer wieder Falsch! aus?
-
e:\gggggg\gggggg.cpp(108) : fatal error C1010: Unerwartetes Dateiende waehrend der Suche nach der Direktive fuer die vorkompilierte Header-Datei
Fehler beim Ausführen von cl.exe.gggggg.exe - 1 Fehler, 0 Warnung(en)
der fehler bezieht sich auf die letzte zeile. woran liegts???
-
wtf?
-
Hm eine Frage:
Wozu die Map wenn der Zugriff über den String als Schlüssel nicht verwendet wird?
-
@Whtthfck: Schau dir das Programm mal im Debugger an - womöglich hast du ja beim Einlesen gepatzt.
(btw, die Anweisunganswer==pos->secondist nutzlos)@Zwielicht: Lies dir mal in der MSDN das Kapitel "vorcompilierte Header" durch

-
omg ich depp hab vergessen str und str2 zurückzusetzen

thx CStoll ^^