Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » ANFÄNGER: Probleme mit makefile / strings

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ] [ 3 ]
000
17.06.2004, 22:32 Uhr
songbird



Hallo zusammen.

Ich bin blutiger C++Anfänger. Wir müssen in der Uni ein "kleines" Programm für eine DVD-Verwaltung schreiben.
Wir haben eine dvd.h , die die Klasse Dvd mit Konstruktor/Destruktor und Methoden-Deklarationen enthält.
Dazu gibt es dann eine dvd.cpp , die die zugehörigen Initialisierungslisten und Methoden-Definitionen (alles freie Methoden) enthält.
Das gleiche gilt für user.h und user.cpp
Dann haben wir noch eine main.h mit der main-methode und einigen freien Methoden-Definitionen, die in der main.h deklariert werden.
Ein makefile haben wir auch geschrieben.
Wenn wir jetzt aber "Build make target" (Eclipse) ausführen, hagelt es in der dvd.cpp und dvd.h Fehlermeldungen, die scheinbar alle mit Strings zu tun haben... <string.h> haben wir überall inkludiert und "using namespace std" steht auch überall drin...

Weiß jemand, woran das liegen könnte?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
17.06.2004, 22:43 Uhr
DerSchwarzeSchlumpf




Zitat:
songbird postete
Hallo zusammen.

Ich bin blutiger C++Anfänger. Wir müssen in der Uni ein "kleines" Programm für eine DVD-Verwaltung schreiben.
Wir haben eine dvd.h , die die Klasse Dvd mit Konstruktor/Destruktor und Methoden-Deklarationen enthält.
Dazu gibt es dann eine dvd.cpp , die die zugehörigen Initialisierungslisten und Methoden-Definitionen (alles freie Methoden) enthält.
Das gleiche gilt für user.h und user.cpp
Dann haben wir noch eine main.h mit der main-methode und einigen freien Methoden-Definitionen, die in der main.h deklariert werden.
Ein makefile haben wir auch geschrieben.
Wenn wir jetzt aber "Build make target" (Eclipse) ausführen, hagelt es in der dvd.cpp und dvd.h Fehlermeldungen, die scheinbar alle mit Strings zu tun haben... <string.h> haben wir überall inkludiert und "using namespace std" steht auch überall drin...

Weiß jemand, woran das liegen könnte?


hi

hmm poste mal das makefile das könnte viell. helfen (:

lg
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
17.06.2004, 22:44 Uhr
songbird



all: film.exe

clean:
rm dvd.o main.o user.o film.exe

film.exe: dvd.o user.o main.o
g++ -g -o film dvd.o user.o main.o

dvd.o: dvd.cpp dvd.h
g++ -c -g dvd.cpp

user.o: user.cpp user.h
g++ -c -g user.cpp

main.o: main.cpp main.h dvd.h user.h
g++ -c -g main.cpp
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
17.06.2004, 22:47 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


nicht string.h includieren sondern


C++:
#include <string>


--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
17.06.2004, 22:49 Uhr
songbird




Zitat:
Windalf postete
nicht string.h includieren sondern


C++:
#include <string>




ui, wieso das denn???

aber DANKE
!

edit: jetzt kommen zwar tausend andere fehler aber mal schau'N

Dieser Post wurde am 17.06.2004 um 22:51 Uhr von songbird editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
17.06.2004, 22:50 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


string.h ist ein deprecated header...(veraltet)
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
17.06.2004, 23:03 Uhr
songbird



ich poste jetzt mal die main.cpp, ich hoffe das ist OK... aber wir bekommen jezt ganz seltsame fehler, u.a. auch in meinem persönlichen mingw32-ordner


C++:
#include "dvd.h"
#include "user.h"
#include "main.h"

#include <string>
#include <iostream>
using namespace std;

User persons[4];

void mainMenu(int posi)
{
    cout << "Herzlich Willkommen " << persons[posi].getName << "!" << endl
         << "Was möchten Sie tun ?" << endl;
}

int main()
{
    User user1("Admin", "admin", "Ad Min", true);
    User user2("Glenn", "glenn", "Glenn Langemeier", false);
    User user3("Frank", "frank", "Frank C++", false);
    User user4("Arne", "arne", "Arne Kuhlmann", false);//Erstellung von 4 Usern
    
    persons = {user1, user2, user3, user4}; //Einlesen ins array
    
//Erstellung von 4 DVDs
    Dvd dvd1("Star Wars - A new hope", "George Lucas", "Sci-Fi", 001, 116, "15.06.04");
    Dvd dvd2("Star Wars - The Empire strikes back", "Irvin Kershner", "Sci-Fi", 002, 125, "10.06.04");
    Dvd dvd3("Star Wars - Return of the Jedi", "Richard Marquand", "Sci-Fi", 003, 131, "10.06.03");
    Dvd dvd4("Indiana Jones - Raiders of the lost Ark", "George Lucas", "Adventure", 004, 126, "09.11.03");
    Dvd dvd5("Indiana Jones - The last Crusade", "Steven Spielberg", "Adventure", 005, 132, "14.12.03");
    
    string inputname("");
    string inputpass("");
    bool access = false;
    int pos = 0;
    
    while (access == false)
    {
        cout << "Herzlich Willkommen in Ihrer DVD-Verwaltung !" << endl <<
                "Bitte geben Sie Ihren Benutzernamen und Passwort durch Leerzeichen getrennt ein !" << endl;
        cin >> inputname >> inputpass;
        
        for (int i = 0; i < 4; i++)
        {
            if(strcmp(persons[i].getUsername,inputname) = 0) && (strcmp(persons[i].getPassword,inputpass) = 0)
            {
                access = true;
                pos = i;
            }
        }
        
        if (access == false)
        {
            cout << "Das System konnte Sie leider nicht anmelden. Bitte versuchen Sie es noch einmal" << endl;
        }
    }  
    
    mainMenu(pos);
    
    return 0;
}



Kann sein, dass da einige ganz doofe Fehler sind... Dafür entschuldige ich mich schonmal

Dieser Post wurde am 17.06.2004 um 23:12 Uhr von songbird editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
17.06.2004, 23:13 Uhr
(un)wissender
Niveauwart


@windalf
string.h ist nicht deprecated, sondern schlicht der Header für die C-string-Funktionen in C.
In C++ schreibt man für den <cstring>, für die Klasse std::string <string>
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
17.06.2004, 23:17 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


was genau ist denn dein problem?

du mixt auf jeden fall ordentlich c und c++ wiso noch char-arrays nehmen wenn du std::strings hast?

auf jeden fall nimmt strcmp keine std::strings... die kannst du gleich mit = vergleichen oder du musst std::string::c_str() verwenden um ein const char* zu bekommen das du dann strcmp übergeben kannst...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
17.06.2004, 23:19 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


@(un)wissender
upsi jo hab wohl wieder mal an iostream gedacht

naja auf jeden fall muss er string includieren wenn er std::strings verwenden will
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ] [ 3 ]     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: