Meine Funktionen.
-
Hallo Liebe Boardgemeinde,
ich habe eine Frage! Wenn ich diese Funktion Compilen will, kommen einige Fehler...includes.h
#include <iostream.h> #include <stdio.h> #include <conio.h> #include <time.h> #include <string.h>
functions.h
bool Vokabelokay( std::string eingegeben, std::string richtig ) { if(eingegeben == richtig) { cout << "Die Vokabel " << eingegeben << " hast du richtig eingegeben!\n\n"; return true; } else { cout << "Die Vokabel " << eingegeben << "war falsch!\nDie richtige Vokabel währe " << richtig << " gewesen...\n\n"; return false; } } bool jn(char eingabe[255]) { if(eingabe == "j" || eingabe == "J") return true; else return false; }
Und um das zu Compilen brauch ich ja eine cpp....
#include "includes.h"
#include "functions.h"Ich hab MS VC++... Danke für jede Hilfe...
thX...
---------
--------------------Konfiguration: Vokabel - Win32 Debug--------------------
Kompilierung läuft...
main.cpp
c:\programme\programmierung\c++\projekte\vokabeltest\vokabel\functions.h(1) : error C2653: 'std' : Keine Klasse oder Namespace
c:\programme\programmierung\c++\projekte\vokabeltest\vokabel\functions.h(1) : error C2065: 'string' : nichtdeklarierter Bezeichner
c:\programme\programmierung\c++\projekte\vokabeltest\vokabel\functions.h(1) : error C2146: Syntaxfehler : Fehlendes ')' vor Bezeichner 'eingegeben'
c:\programme\programmierung\c++\projekte\vokabeltest\vokabel\functions.h(1) : warning C4800: 'int' : Variable wird auf booleschen Wert ('True' oder 'False') gesetzt (Auswirkungen auf Leistungsverhalten moeglich)
c:\programme\programmierung\c++\projekte\vokabeltest\vokabel\functions.h(1) : error C2653: 'std' : Keine Klasse oder Namespace
c:\programme\programmierung\c++\projekte\vokabeltest\vokabel\functions.h(1) : error C2059: Syntaxfehler : ')'
c:\programme\programmierung\c++\projekte\vokabeltest\vokabel\functions.h(2) : error C2143: Syntaxfehler : Fehlendes ';' vor '{'
c:\programme\programmierung\c++\projekte\vokabeltest\vokabel\functions.h(2) : error C2447: Funktionskopf fehlt - Parameterliste im alten Stil?
Fehler beim Ausführen von cl.exe.Vokabel.exe - 7 Fehler, 1 Warnung(en)
-
#include <string> fehlt.
Wieso übergibst du jn() eigentlich ein char-Array, wenn du ansonsten mit std::string arbeitest?
-
vielleicht solltest du die standrd header benutzen.
ausserdem ist ja glaub ich der namespce std nichtdefiniert
-
Bashar schrieb:
#include <string> fehlt.
Wieso übergibst du jn() eigentlich ein char-Array, wenn du ansonsten mit std::string arbeitest?Weil mir schon ein wenig in einem anderen Forum geholfen wurde. Und da wollt ich erstmal gucken was so passiert....
#include <iostream.h> #include <stdio.h> #include <conio.h> #include <time.h> #include <string.h> using namespace std;
So besser? Aber dann kommt noch ein Fehler hinzu...
c:\programme\programmierung\c++\projekte\vokabeltest\vokabel\includes.h(6) : error C2871: 'std' : Existiert nicht oder ist kein Namespace
-
nja es sollte heissen
#include <iostream> #include <cstdio> #include <conio.h> #include <time.h> #include <string> using namespace std;
wobei ich mir bei time und conio nichtganz sicher bin
und ich hab auch keine hnung wo conio.h cstdio und time.h genutzt wird
-
Na ja, das einzige was ich geändert habe ist string.
Wenn ich nämlich z.B. nur iostream schreibe erkennt er nichtmal cout !!
-
Mach es so wie blabla³, nur statt <time.h> <ctime>
Also:#include <iostream> #include <cstdio> #include <conio.h> #include <ctime> #include <string> using namespace std;
Wenn du <iostream> schreibst, musst du auch "using namespace std" oder immer "std::cout" schreiben.
-
Nene, ich habs schon.... Danke fpr eure Hilfe!
Ich hab die <cstring> eingebunden und dann mit strcmp verglichen! Und das Funkt wundabar!!Trotzdem danke für all eure bemühungen!
-
Du vergleichst zwei std::strings mit strcmp?!
Ne, binde lieber <string> ein und nimm "using namespace std;" und vergleich direkt mit ==.Das ist viel einfacher und weniger fehleranfällig als strcmp.