musiKk
Dr. Strangelove
Hallo, ich bins mal wieder. :/
Ich versuch mal das Umfeld um die Frage so weit zu straffen, wie es geht:
Ich habe folgende Strukturen:
Um folgende Funktion dreht es sich (erst Prototyp, dann die Funktion bei der Deklaration):
Aufgerufen wird die Funktion:
Fuer die rot markierte Zeile schreit mich der Compiler an: incompatible types in assignment.
Warum? newIndex->name ist vom Typ char*, name ist vom Typ char*. Habe schon Trial and Error like (mir rennt die Zeit davon, wuerde ich ueber alles nachdenken, was ich tu, wuerd ich gar nix mehr schaffen) alle moeglichen Kombinationen von * und & ohne Erfolg ausprobiert.
Waere sehr nett, wenn mir jemand auf die Spruenge helfen koennte.
Ich versuch mal das Umfeld um die Frage so weit zu straffen, wie es geht:
Ich habe folgende Strukturen:
Code:
struct satztyp {
char name[20];
char vorname[20];
char anschrift[50];
char telefon[20];
};
struct index {
char name[20];
long position;
};
Um folgende Funktion dreht es sich (erst Prototyp, dann die Funktion bei der Deklaration):
Code:
struct indexElement* add(char*, long, struct indexElement*);
struct indexElement* add(char* name, long bytePos, struct indexElement* start) {
struct index *newIndex;
newIndex=(struct index*) malloc (sizeof(struct index));
[COLOR="Red"]newIndex->name=name;[/COLOR]
newIndex->position=bytePos;
Aufgerufen wird die Funktion:
Code:
struct satztyp temp;
struct indexElement *start=NULL;
while(fread(&temp, sizeof(struct satztyp), 1, fp)) {
char* name=temp.name;
start=add(name, ftell(fp), start);
Fuer die rot markierte Zeile schreit mich der Compiler an: incompatible types in assignment.
Warum? newIndex->name ist vom Typ char*, name ist vom Typ char*. Habe schon Trial and Error like (mir rennt die Zeit davon, wuerde ich ueber alles nachdenken, was ich tu, wuerd ich gar nix mehr schaffen) alle moeglichen Kombinationen von * und & ohne Erfolg ausprobiert.
Waere sehr nett, wenn mir jemand auf die Spruenge helfen koennte.