error C2664: 'strcmp': Konvertierung des Parameters 2 von 'const char' in 'const char *' nicht möglich
-
Kann mir jemand helfen den Fehler zu beseitigen?
hab schon alles versucht...struct element{char *begriff; int seite1; int seite2; int seite3;}; bool suche_genau(element *verzeichnis,const char* suchbegriff,int anz) { if(strcmp(verzeichnis->begriff,*suchbegriff)==0){ anz=1; return true; } else return false; } int main() { element stichwortverzeichnis[1000]= {{"Atom",1,45,387},{"Betastrahlung",2,48,793},{"Gammastrahlung",17,49,845}}; int anzahl=0; const char* suchbegriff="Atom"; if(suche_genau(element* ,const char* ,int)==true) cout<<"Treffer in Seite "<<stichwortverzeichnis.seite1<<stichwortverzeichnis.seite2<<stichwortverzeichnis.seite3<<endl; else cout<<"kein Treffer"<<endl; return 0; }
-
Ohne deinen Quellcode ganz zu lesen, hier ein Tipp der dir dein Leben erleichtern könnte:
std::string.
-
Der Fehler sagt doch eigentlich was zu tun. Statt das erste Element der Zeichenkette, möchte er einen Pointer auf die Zeichenkette.
struct element{char *begriff; int seite1; int seite2; int seite3;}; bool suche_genau(element *verzeichnis,const char* suchbegriff,int & anz) { if(strcmp(verzeichnis->begriff,suchbegriff)==0){ anz=1; return true; } else return false; } int main() { element stichwortverzeichnis[1000]= {{"Atom",1,45,387},{"Betastrahlung",2,48,793},{"Gammastrahlung",17,49,845}}; int anzahl=0; const char* suchbegriff="Atom"; if(suche_genau(stichwortverzeichnis[0] ,suchbegriff ,anzahl)==true) cout<<"Treffer in Seite "<<stichwortverzeichnis.seite1<<stichwortverzeichnis.seite2<<stichwortverzeichnis.seite3<<endl; else cout<<"kein Treffer"<<endl; return 0; }Da waren aber noch viel mehr Fehler drin, bin mir nicht sicher ob alle raus sind. Du solltest dir aber auf jeden Fall mal gedanken über die Änderungen machen.
-
danke:)
hab jetzt nur noch ein kleineres Problem:
error C2228: Links von ".seite1" muss sich eine Klasse/Struktur/Union befinden.element ist doch meine Struktur
-
Vielleicht solltest du noch angeben, auf welches Element des Arrays du dich beziehst, wenn du auf den Member
seite1zugreifen willst.
-
hab einen -> draus gemacht
jetzt läuft das Programm
vielen dank jedenfalls dass ihr euch mein Programm angeschaut habt!!
-
forever21 schrieb:
danke:)
hab jetzt nur noch ein kleineres Problem:
error C2228: Links von ".seite1" muss sich eine Klasse/Struktur/Union befinden.element ist doch meine Struktur
Ist mir beim Lesen vorhin auch aufgefallen, konnte aber den Beitrag nicht mehr ändern, sorry.
DU hättest statt den Pfeil lieber ein [0] vor den Punkt schreiben sollen.Ausserdem rate ich dir dringend zu überlegen was an deiner Version falsch war.