002
15.03.2005, 07:41 Uhr
typecast
aka loddab (Operator)
|
Also da sind mehrere Fehler (bzw. Dinge, die man nicht machen sollte) drin:
1.)
C++: |
#include <iostream.h> #include <string.h>
|
Du solltest die Header nicht so, sondern so:
C++: |
#include <iostream> #include <string>
|
einbinden. Wenn du die Boardsuche benutzt, dann wirst du auch wissen warum. Die Boardsuche wird dir dann auch bei den Fehlern helfen, die kommen werden, sobald du das veraendert hast
2.)
C++: |
int nummer,a,kopie,numm,b,nummer_eins; char auswahl; char eing;
|
Du solltest es vermeiden globale Variablen zu deklarieren. Versuche alle Variablen lokal zu deklarieren.
3.)
C++: |
int eintra( int a){ if(nummer_eins != nummer) numm=-1; return (numm); }
|
Also hier ueberpruefst du nur, ob der Eintrag gleich dem letzten Eintrag ist. Du solltest aber das komplette Telefonbuch durchlaufen:
C++: |
bool eintra(int num) { for (int i = 0; i <= 100; ++i) { if (num == telfonbuch.tnummer) return true;
return false; } }
// der Aufruf muesste dann so aussehen: std::cin >> nummer; // <-- hier ist uebrigens ein Tipp fuer den angekuendigten Fehler in 1.) drin ;) if (!eintra(nummer)) std::cout << "Diese Telefonnummer gibt es nicht im Telefonbuch" << std::endl;
|
Ausserdem wuerde ich dir empfehlen statt des Arrays telefonbuch[100] einen std::vector zu verweden. -- All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925) |